KR101414453B1 - 메모리 제어장치 및 제어방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체 - Google Patents
메모리 제어장치 및 제어방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체 Download PDFInfo
- Publication number
- KR101414453B1 KR101414453B1 KR1020140030111A KR20140030111A KR101414453B1 KR 101414453 B1 KR101414453 B1 KR 101414453B1 KR 1020140030111 A KR1020140030111 A KR 1020140030111A KR 20140030111 A KR20140030111 A KR 20140030111A KR 101414453 B1 KR101414453 B1 KR 101414453B1
- Authority
- KR
- South Korea
- Prior art keywords
- memory access
- bank
- access request
- memory
- buffer unit
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 30
- 239000000872 buffer Substances 0.000 claims abstract description 80
- 238000012546 transfer Methods 0.000 claims abstract description 10
- 238000012545 processing Methods 0.000 claims description 4
- 238000004148 unit process Methods 0.000 abstract 1
- 238000004088 simulation Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 4
- 230000015556 catabolic process Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1673—Details of memory controller using buffers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0038—System on Chip
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Dram (AREA)
Abstract
Description
도 2는 본 발명에 따른 메모리 제어장치의 상세한 구성을 도시한 블록도,
도 3은 본 발명의 제1실시예에 따른 메모리 제어방법을 도시한 흐름도,
도 4는 본 발명의 제2실시예에 따른 메모리 제어방법을 도시한 흐름도,
도 5은 본 발명에 따른 메모리 제어장치를 사용한 시뮬레이션 환경을 도시한 도면,
도 6은 본 발명에 따른 메모리 제어장치에 대한 시뮬레이션 결과 쓰기 동작에 대한 데이터 패턴을 도시한 도면,
도 7은 쓰기 패턴 1, 2, 3의 요청에 대한 시뮬레이션 결과를 도시한 그래프,
도 8은 본 발명에 따른 메모리 제어장치에 대한 시뮬레이션 결과 읽기 동작에 대한 데이터 패턴을 도시한 도면,
도 9는 읽기 패턴 4, 5, 6의 요청에 대한 시뮬레이션 결과를 도시한 그래프,
도 10은 본 발명에 따른 메모리 제어장치에 대한 시뮬레이션 결과 같은 행에 대해 쓰기 후 읽기 및 읽기 후 쓰기에 따른 연산 사이클의 차이를 비교한 도면,
도 11은 데이터 패턴 7, 8의 요청에 대한 연산 사이클을 비교한 그래프,
도 12는 각각 FIR 필터와 H.264 복호기에서 추출한 데이터 패턴을 도시한 도면, 그리고,
도 13은 FIR 필터와 H.264 복호기의 데이터 패턴에 대한 동작 연산 사이클을 비교한 그래프이다.
210 : 메모리 접근 요청 버퍼부 220 : 메모리 접근 요청 제어부
230 : 뱅크 제어부 231 : 제1뱅크 버퍼부
232 : 제2뱅크 버퍼부 233 : 제3뱅크 버퍼부
234 : 제4뱅크 버퍼부
Claims (8)
- 다수의 메모리 접근 요청의 실행 순서를 적응적으로 결정하는 메모리 제어장치에 있어서,
다수의 메모리 접근 요청의 입력된 순서 및 상기 메모리 접근 요청에서 추출한 메모리 주소의 뱅크와 행 정보를 토대로 다수의 메모리 접근 요청을 입력된 순서대로 처리하되 동일 뱅크의 동일 행에 대한 메모리 접근 요청은 연속적으로 처리되도록 메모리 접근 요청 순서를 결정하여 저장하는 메모리 접근 요청 버퍼부;
상기 메모리 접근 요청 버퍼부에서 결정된 순서대로 메모리 접근 요청을 읽어와 각 뱅크별로 메모리 접근 요청을 분배하고, 각 뱅크별로 분배된 메모리 접근 요청을 순서대로 메모리로 전달하여 실행하는 메모리 접근 요청 제어부; 및
상기 뱅크별로 분배된 메모리 접근 요청을 사전에 설정된 수 이내로 각 뱅크별 버퍼부에 저장하고, 각 뱅크별 동작상태를 제어하는 뱅크 제어부;를 포함하며,
상기 메모리 접근 요청 제어부는 각 뱅크별로 메모리 접근 요청을 분배시 상기 뱅크별 버퍼부가 비어 있는지 확인하여, 상기 메모리 접근 요청 버퍼부에 의해 결정된 상기 메모리 접근 요청 순서 상 뒤 순서인 메모리 접근 요청이라도 비어 있는 뱅크별 버퍼부로 먼저 전달하는 것을 특징으로 하는 메모리 제어장치. - 제 1항에 있어서,
상기 메모리 접근 요청 제어부는 상기 뱅크별 버퍼부 중 하나인 제1뱅크 버퍼부가 사전에 설정된 수만큼 메모리 접근 요청이 채워지면, 다른 제2뱅크를 접근하는 메모리 접근 요청을 검색하여 비어있는 제2뱅크 버퍼부로 상기 제2뱅크를 접근하는 메모리 접근 요청을 전달하는 것을 특징으로 하는 메모리 제어장치. - 제 1항에 있어서,
상기 메모리 접근 요청 제어부는 현재 처리대상 메모리 접근 요청의 메모리 주소가 상기 현재 처리대상 메모리 접근 요청 이전에 읽어온 메모리 접근 요청과 동일 뱅크, 다른 행이면 새로운 행을 열기 위해 발생한 대기 사이클 동안 상기 현재 처리대상 메모리 접근 요청 이후 순서에 해당하는 상기 뱅크와 다른 뱅크에 접근하는 메모리 접근 요청을 상기 현재 처리대상 메모리 접근 요청보다 먼저 메모리로 전달하는 것을 특징으로 하는 메모리 제어장치. - 제 1항에 있어서,
상기 메모리 접근 요청 제어부는 각 뱅크별로 분배된 메모리 접근 요청을 상기 뱅크별 버퍼부로 전달하고, 상기 뱅크 제어부의 제어신호에 따라 상기 메모리로 메모리 접근 명령을 전달하는 것을 특징으로 하는 메모리 제어장치. - 제 1항 내지 제 4항 중 어느 한 항에 있어서,
상기 메모리는 에스디램(SDRAM)인 것을 특징으로 하는 메모리 제어장치. - 다수의 메모리 접근 요청의 실행 순서를 적응적으로 결정하는 메모리 제어장치에 의해 수행되는 메모리 제어방법에 있어서,
(a) 메모리 접근 요청 제어부는 메모리 접근 요청 버퍼부로부터 다수의 메모리 접근 요청을 순서대로 읽어오는 단계;
(b) 상기 메모리 접근 요청 제어부는 n번째 메모리 접근 요청에서 추출한 메모리 주소에 대응하는 제1뱅크 정보를 기준으로 제1뱅크 버퍼부가 비어있는지 확인하는 단계;
(c) 상기 제1뱅크 버퍼부가 비어 있으면 상기 n번째 메모리 접근 요청을 상기 제1뱅크 버퍼부로 전달하고, 상기 제1뱅크 버퍼부가 비어 있지 않으면 상기 n번째 메모리 접근 요청 이후 순서의 메모리 접근 요청 중 메모리 주소의 뱅크 정보가 제2뱅크인 메모리 접근 요청을 읽어오는 단계;
(d)제2뱅크 버퍼부가 비어 있는지 확인하여, 상기 제2뱅크 버퍼부가 비어 있으면 상기 메모리 주소의 뱅크 정보가 제2뱅크인 메모리 접근 요청을 상기 제2뱅크 버퍼부로 전달하는 단계; 및
(e) 상기 메모리 접근 요청이 각 뱅크별 버퍼부로 전달되는 순서를 저장하여 뱅크 제어부의 명령을 차례대로 메모리로 전달하는 단계;를 포함하며,
상기 (e) 단계는,
(e1) 상기 각 뱅크별 버퍼부에 저장되어 있는 다수의 메모리 접근 요청을 입력된 순서에 따라 첫 번째 메모리 접근 명령을 메모리로 전달하고, 상기 첫 번째 메모리 접근 요청의 다음 순서로 입력된 두 번째 메모리 접근 요청이 상기 첫 번째 메모리 접근 요청과 메모리 주소가 동일 뱅크의 동일 행인지 확인하는 단계; 및
(e2) 상기 두 번째 메모리 접근 요청이 상기 첫 번째 메모리 접근 요청과 동일 뱅크의 동일 행이면 상기 두 번째 메모리 접근 명령을 연속적으로 상기 메모리로 전달하고, 상기 두 번째 메모리 접근 요청이 상기 첫 번째 메모리 접근 요청과 동일 뱅크의 다른 행이면 새로운 행을 열기 위해 발생한 대기 사이클 동안 상기 제2뱅크 버퍼부에 저장되어 있는 다수의 메모리 접근 요청에 대해 입력된 순서에 따라 생성된 명령을 메모리로 전달하는 단계;를 포함하는 것을 특징으로 하는 메모리 제어방법. - 제 6항에 있어서,
상기 메모리는 에스디램(SDRAM)인 것을 특징으로 하는 메모리 제어방법. - 제 6항 또는 제 7항에 기재된 메모리 제어방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140030111A KR101414453B1 (ko) | 2014-03-14 | 2014-03-14 | 메모리 제어장치 및 제어방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140030111A KR101414453B1 (ko) | 2014-03-14 | 2014-03-14 | 메모리 제어장치 및 제어방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110132579A Division KR20130065957A (ko) | 2011-12-12 | 2011-12-12 | 메모리 제어장치 및 제어방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20140058455A KR20140058455A (ko) | 2014-05-14 |
KR101414453B1 true KR101414453B1 (ko) | 2014-07-03 |
Family
ID=50888767
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140030111A KR101414453B1 (ko) | 2014-03-14 | 2014-03-14 | 메모리 제어장치 및 제어방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101414453B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9921780B2 (en) | 2015-11-23 | 2018-03-20 | SK Hynix Inc. | Memory system and operating method thereof |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000172552A (ja) | 1998-12-10 | 2000-06-23 | Nec Kofu Ltd | メモリアクセス装置及びそのアクセス方法 |
KR20090020928A (ko) * | 2007-08-24 | 2009-02-27 | 삼성전자주식회사 | 복수개의 뱅크들을 동시에 프로그램할 수 있는 반도체메모리 장치 및 방법 |
-
2014
- 2014-03-14 KR KR1020140030111A patent/KR101414453B1/ko active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000172552A (ja) | 1998-12-10 | 2000-06-23 | Nec Kofu Ltd | メモリアクセス装置及びそのアクセス方法 |
KR20090020928A (ko) * | 2007-08-24 | 2009-02-27 | 삼성전자주식회사 | 복수개의 뱅크들을 동시에 프로그램할 수 있는 반도체메모리 장치 및 방법 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9921780B2 (en) | 2015-11-23 | 2018-03-20 | SK Hynix Inc. | Memory system and operating method thereof |
Also Published As
Publication number | Publication date |
---|---|
KR20140058455A (ko) | 2014-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20130065957A (ko) | 메모리 제어장치 및 제어방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체 | |
CN111742305B (zh) | 调度具有不统一等待时间的存储器请求 | |
JP4926963B2 (ja) | 多重メモリアクセスレイテンシ時間をサポートするコンピュータメモリシステムにおける性能を改善するためのシステムおよび方法 | |
KR101312281B1 (ko) | 프로세서 및 메모리 제어 방법 | |
KR101709385B1 (ko) | 메모리 응답을 정렬하는 메모리 장치, 컴퓨터 시스템 및 방법 | |
US8412870B2 (en) | Optimized arbiter using multi-level arbitration | |
JP5666722B2 (ja) | メモリ・インターフェース | |
US20050033874A1 (en) | Direct memory access using memory descriptor list | |
CN1961300A (zh) | 使用集成dma引擎进行高性能易失性磁盘驱动器存储器访问的装置和方法 | |
JP2009508247A (ja) | バス調停に関する方法及びシステム | |
CN111684430A (zh) | 支持同一信道上对不统一等待时间的存储器类型的响应 | |
WO2016078307A1 (zh) | 可配置片上互联系统及其实现方法、装置和存储介质 | |
KR101292309B1 (ko) | 반도체칩 및 메모리 제어방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체 | |
US8667199B2 (en) | Data processing apparatus and method for performing multi-cycle arbitration | |
JP5911548B1 (ja) | 共有メモリへのアクセス要求をスケジューリングするための装置、方法およびコンピュータプログラム | |
US7913013B2 (en) | Semiconductor integrated circuit | |
KR101414453B1 (ko) | 메모리 제어장치 및 제어방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체 | |
CN104572519A (zh) | 一种用于多处理器的多端口访存控制器及其控制方法 | |
KR102334473B1 (ko) | 적응형 딥러닝 가속 장치 및 방법 | |
KR20220114449A (ko) | 메모리 컨트롤러 및 메모리 제어 방법 | |
KR20230059536A (ko) | 프로세스 스케줄링 방법 및 장치 | |
EP1704487B1 (en) | Dmac issue mechanism via streaming id method | |
US20250045127A1 (en) | Method of detecting and correcting multi-path interference component in tof camera | |
JP2003228512A (ja) | データ転送装置 | |
KR20070020391A (ko) | 스트리밍 id 방법에 의한 dmac 발행 메커니즘 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
PA0107 | Divisional application |
Comment text: Divisional Application of Patent Patent event date: 20140314 Patent event code: PA01071R01D Filing date: 20111212 Application number text: 1020110132579 |
|
PA0201 | Request for examination | ||
PG1501 | Laying open of application | ||
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20140619 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20140626 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20140627 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
FPAY | Annual fee payment |
Payment date: 20170410 Year of fee payment: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20170410 Start annual number: 4 End annual number: 4 |
|
FPAY | Annual fee payment |
Payment date: 20180409 Year of fee payment: 5 |
|
PR1001 | Payment of annual fee |
Payment date: 20180409 Start annual number: 5 End annual number: 5 |
|
FPAY | Annual fee payment |
Payment date: 20190401 Year of fee payment: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20190401 Start annual number: 6 End annual number: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20200625 Start annual number: 7 End annual number: 7 |
|
PC1903 | Unpaid annual fee |
Termination category: Default of registration fee Termination date: 20220307 |
|
PR0401 | Registration of restoration |
Patent event code: PR04011E01D Patent event date: 20220307 Comment text: Registration of Restoration |
|
PR1001 | Payment of annual fee |
Payment date: 20220307 Start annual number: 8 End annual number: 8 |
|
R401 | Registration of restoration | ||
PR1001 | Payment of annual fee |
Payment date: 20220502 Start annual number: 9 End annual number: 9 |
|
PR1001 | Payment of annual fee |
Payment date: 20230417 Start annual number: 10 End annual number: 10 |