KR101645003B1 - 메모리 제어기 및 그 메모리 제어기가 탑재된 컴퓨팅 장치 - Google Patents
메모리 제어기 및 그 메모리 제어기가 탑재된 컴퓨팅 장치 Download PDFInfo
- Publication number
- KR101645003B1 KR101645003B1 KR1020100013390A KR20100013390A KR101645003B1 KR 101645003 B1 KR101645003 B1 KR 101645003B1 KR 1020100013390 A KR1020100013390 A KR 1020100013390A KR 20100013390 A KR20100013390 A KR 20100013390A KR 101645003 B1 KR101645003 B1 KR 101645003B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- memory
- buffer
- word
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
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
-
- 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)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
도 2는 도 1의 실시예에 있어서 메모리 제어기(30)의 태그로직들(100, 200)의 보다 상세한 구성을 도시한 블럭도이다.
도 3은 일 실시예에 따른 컴퓨팅 장치의 메모리 액세스 제어 방법을 개략적으로 도시한 흐름도이다.
도 4는 일 실시예에 따른 메모리 액세스 단계(1300)의 보다 상세한 흐름도이다.
도 5는 일 실시예에 따른 컴퓨팅 장치의 메모리 액세스 제어 방법을 예시적으로 설명하기 위한 도면이다.
Claims (14)
- 프로세서와; 메모리와;
상기 프로세서와 상기 메모리 사이에 위치하고, 정렬된 워드 단위로 상기 메모리를 액세스하여 출력된 워드 데이터를 읽어들여 임시 저장하는 데이터 버퍼를 포함하는 메모리 제어기; 를 포함하고,
상기 메모리 제어기는, 상기 프로세서로부터의 비정렬된 메모리 액세스 요구에 응답하여 요구된 데이터를 상기 데이터 버퍼로부터 추출하여 출력하는 컴퓨팅 장치.
- 제 1 항에 있어서, 상기 메모리 제어기가 :
정렬된 워드 단위로 상기 메모리를 액세스하는 메모리 액세스부와;
상기 메모리 액세스부가 출력하는 워드 데이터들을 임시로 저장하는 둘 이상의 데이터 버퍼들과, 상기 프로세서로부터의 비정렬된 메모리 액세스 요구에 응답하여 요구된 데이터를 상기 데이터 버퍼들로부터 추출하고 조합하여 출력하는 태그 제어기를 포함하는 태그된 버퍼(tagged buffer);
를 포함하는 컴퓨팅 장치.
- 제 2 항에 있어서, 상기 메모리는 뱅크를 포함하고, 상기 메모리 액세스부 및 상기 태그된 버퍼가 상기 뱅크를 위해 제공되는 컴퓨팅 장치.
- 제 3 항에 있어서, 상기 태그된 버퍼가 :
상기 메모리로부터 제 1 워드를 읽어들여 저장하는 제 1 데이터 버퍼와, 상기 메모리로부터 제 2 워드를 읽어들여 저장하는 제 2 데이터 버퍼와, 상기 제 1 데이터 버퍼가 저장하는 제 1 워드의 주소값을 저장하는 제 1 주소 버퍼와, 상기 제 2 데이터 버퍼가 저장하는 제 2 워드의 주소값을 저장하는 제 2 주소 버퍼와, 상기 제 1 데이터 버퍼에 저장된 바이트들과 제 2 데이터 버퍼에 저장된 바이트들 중 요구된 바이트들을 조합하여 워드를 생성하여 출력하는 태그 멀티플렉서, 그리고 이들의 동작을 제어하는 비교기를 포함하는 컴퓨팅 장치.
- 정렬된 워드 단위로 메모리를 액세스하고 상기 메모리로부터 데이터를 읽어들여, 프로세서와 메모리 사이에 위치하는 복수의 데이터 버퍼 중 하나에 저장하는 버퍼링 단계;
프로세서로부터의 비정렬된 메모리 액세스 요구에 응답하여 요구된 데이터를 구성하는 바이트들을 데이터 버퍼들에서 추출한 후 조합하여 출력하는 메모리 액세스 단계;를 포함하는 컴퓨팅 장치의 메모리 액세스 제어 방법.
- 제 5 항에 있어서, 상기 메모리 액세스 단계는 :
프로세서로부터의 비정렬된 메모리 액세스 요구에 응답하여 요구된 데이터를 구성하는 바이트들이 데이터 버퍼들 중 어디엔가 저장되어 있는지 여부를 판단하는 버퍼 검색 단계;
바이트들이 복수의 데이터 버퍼들 중에 저장되어 있는 경우 하나 혹은 복수의 데이터 버퍼들로부터 해당하는 바이트들을 추출한 후 조합하여 출력하는 데이터 조합 단계;
를 포함하는 컴퓨팅 장치의 메모리 액세스 제어 방법.
- 제 6 항에 있어서, 상기 버퍼 검색 단계는 :
상기 데이터 버퍼에 저장된 워드들의 주소를 요구된 데이터의 주소와 비교하여 이루어지는 컴퓨팅 장치의 메모리 액세스 제어 방법.
- 제 6 항에 있어서, 상기 방법이 상기 버퍼 검색 단계 이후에 :
요구된 워드를 구성하는 바이트들 중 데이터 버퍼에 저장되어 있지 않은 바이트가 있는 경우, 그 바이트가 포함된 워드를 상기 메모리로부터 읽어들여 또다른 데이터 버퍼에 저장하는 데이터 버퍼링 단계;를 더 포함하는 컴퓨팅 장치의 메모리 액세스 제어 방법.
- 제 8 항에 있어서, 상기 데이터 버퍼링 단계 이후에 상기 메모리로부터 읽어들인 워드에 포함된 요구된 바이트와, 기존 데이터 버퍼에 포함된 요구된 바이트를 조합하여 요구된 워드를 구성하여 출력하는 단계를 더 포함하는 컴퓨팅 장치의 메모리 액세스 제어 방법.
- 제 8 항에 있어서, 요구된 워드 전체가 마지막 데이터 버퍼에 저장되어 있는 경우 해당하는 데이터 버퍼로부터 워드를 출력하고, 그 저장된 데이터를 그 직전 데이터 버퍼로 기록하는 컴퓨팅 장치의 메모리 액세스 제어 방법.
- 프로세서의 메모리 액세스를 제어하는 메모리 제어기에 있어서,
프로세서와 메모리 사이에 위치하고, 정렬된 워드 단위로 메모리를 액세스하여 출력된 워드 데이터를 읽어들여 임시 저장하는 데이터 버퍼; 를 포함하고,
상기 메모리 제어기는, 프로세서로부터의 비정렬된 메모리 액세스 요구에 응답하여 요구된 데이터를 데이터 버퍼로부터 추출하여 출력하는 메모리 제어기.
- 제 11 항에 있어서, 상기 메모리 제어기가 :
정렬된 워드 단위로 상기 메모리를 액세스하는 메모리 액세스부와;
메모리 액세스부가 출력하는 데이터들을 임시로 저장하는 둘 이상의 데이터 버퍼들과, 상기 프로세서로부터의 비정렬된 메모리 액세스 요구에 응답하여 요구된 데이터를 상기 데이터 버퍼들로부터 추출하고 조합하여 출력하는 태그 제어기를 포함하는 태그된 버퍼(tagged buffer);를 포함하는 메모리 제어기.
- 제 12 항에 있어서, 상기 태그된 버퍼가 :
메모리로부터 정렬된 워드를 읽어들여 저장하는 데이터 버퍼와, 상기 데이터 버퍼가 저장하는 워드의 주소값을 저장하는 주소 버퍼와, 상기 데이터 버퍼에 저장된 바이트들중 요구된 바이트들을 조합하여 출력하는 태그 멀티플렉서, 그리고 데이터 버퍼 및 주소 버퍼, 그리고 상기 태그 멀티플렉서를 제어하는 태그 제어기를 포함하는 메모리 제어기.
- 제 12 항에 있어서, 상기 태그된 버퍼가 :
상기 메모리로부터 제 1 워드를 읽어들여 저장하는 제 1 데이터 버퍼와, 상기 메모리로부터 제 2 워드를 읽어들여 저장하는 제 2 데이터 버퍼와, 상기 제 1 데이터 버퍼가 저장하는 제 1 워드의 주소값을 저장하는 제 1 주소 버퍼와, 상기 제 2 데이터 버퍼가 저장하는 제 2 워드의 주소값을 저장하는 제 2 주소 버퍼와, 상기 제 1 데이터 버퍼에 저장된 바이트들과 제 2 데이터 버퍼에 저장된 바이트들 중 요구된 바이트들을 조합하여 워드를 생성하여 출력하는 태그 멀티플렉서, 그리고 제 1 및 제 2 데이터 버퍼와 제 1 및 제 2 주소 버퍼, 그리고 상기 태그 멀티플렉서를 제어하는 태그 제어기를 포함하는 메모리 제어기.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100013390A KR101645003B1 (ko) | 2010-02-12 | 2010-02-12 | 메모리 제어기 및 그 메모리 제어기가 탑재된 컴퓨팅 장치 |
US13/006,382 US8688891B2 (en) | 2010-02-12 | 2011-01-13 | Memory controller, method of controlling unaligned memory access, and computing apparatus incorporating memory controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100013390A KR101645003B1 (ko) | 2010-02-12 | 2010-02-12 | 메모리 제어기 및 그 메모리 제어기가 탑재된 컴퓨팅 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20110093373A KR20110093373A (ko) | 2011-08-18 |
KR101645003B1 true KR101645003B1 (ko) | 2016-08-03 |
Family
ID=44370428
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020100013390A Active KR101645003B1 (ko) | 2010-02-12 | 2010-02-12 | 메모리 제어기 및 그 메모리 제어기가 탑재된 컴퓨팅 장치 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8688891B2 (ko) |
KR (1) | KR101645003B1 (ko) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120246407A1 (en) * | 2011-03-21 | 2012-09-27 | Hasenplaugh William C | Method and system to improve unaligned cache memory accesses |
WO2013058775A1 (en) | 2011-10-21 | 2013-04-25 | Soft Machines, Inc. | Fast unaligned memory access |
US10394724B2 (en) * | 2016-08-22 | 2019-08-27 | Qualcomm Incorporated | Low power data transfer for memory subsystem using data pattern checker to determine when to suppress transfers based on specific patterns |
US11182110B1 (en) * | 2019-08-21 | 2021-11-23 | Xilinx, Inc. | On-chip memory block circuit |
JP2024077215A (ja) * | 2022-11-28 | 2024-06-07 | キオクシア株式会社 | メモリシステムおよび制御方法 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0346031B1 (en) * | 1988-06-07 | 1997-12-29 | Fujitsu Limited | Vector data processing apparatus |
JP3215105B2 (ja) * | 1990-08-24 | 2001-10-02 | 富士通株式会社 | メモリアクセス装置 |
US5737748A (en) * | 1995-03-15 | 1998-04-07 | Texas Instruments Incorporated | Microprocessor unit having a first level write-through cache memory and a smaller second-level write-back cache memory |
US5920890A (en) | 1996-11-14 | 1999-07-06 | Motorola, Inc. | Distributed tag cache memory system and method for storing data in the same |
JP3439350B2 (ja) * | 1998-10-02 | 2003-08-25 | Necエレクトロニクス株式会社 | キャッシュ・メモリ制御方法及びキャッシュ・メモリ制御装置 |
KR100351504B1 (ko) * | 2000-06-05 | 2002-09-05 | 삼성전자 주식회사 | 캐쉬 메모리, 그의 전력 소비 절감 방법 그리고 캐쉬메모리를 구비하는 데이터 처리 시스템 |
US6591349B1 (en) * | 2000-08-31 | 2003-07-08 | Hewlett-Packard Development Company, L.P. | Mechanism to reorder memory read and write transactions for reduced latency and increased bandwidth |
US6546453B1 (en) * | 2000-08-31 | 2003-04-08 | Compaq Information Technologies Group, L.P. | Proprammable DRAM address mapping mechanism |
US6622225B1 (en) * | 2000-08-31 | 2003-09-16 | Hewlett-Packard Development Company, L.P. | System for minimizing memory bank conflicts in a computer system |
JP3732397B2 (ja) * | 2000-10-05 | 2006-01-05 | 株式会社日立製作所 | キャッシュシステム |
US20040088472A1 (en) * | 2002-10-31 | 2004-05-06 | Nystuen John M. | Multi-mode memory controller |
KR100519102B1 (ko) * | 2002-12-30 | 2005-10-05 | 제일모직주식회사 | 난연성 열가소성 수지 조성물 |
US7308526B2 (en) * | 2004-06-02 | 2007-12-11 | Intel Corporation | Memory controller module having independent memory controllers for different memory types |
US7366823B2 (en) * | 2005-05-11 | 2008-04-29 | Broadcom Corporation | Method and system for memory access |
-
2010
- 2010-02-12 KR KR1020100013390A patent/KR101645003B1/ko active Active
-
2011
- 2011-01-13 US US13/006,382 patent/US8688891B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
KR20110093373A (ko) | 2011-08-18 |
US20110202704A1 (en) | 2011-08-18 |
US8688891B2 (en) | 2014-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10860326B2 (en) | Multi-threaded instruction buffer design | |
US7360024B2 (en) | Multi-port integrated cache | |
US7209405B2 (en) | Memory device and method having multiple internal data buses and memory bank interleaving | |
US9037810B2 (en) | Pre-fetching of data packets | |
US7301791B2 (en) | Semiconductor device | |
US20050146944A1 (en) | Memory module and method having on-board data search capabilities and processor-based system using such memory modules | |
US20070055814A1 (en) | Memory system and method having uni-directional data buses | |
KR101645003B1 (ko) | 메모리 제어기 및 그 메모리 제어기가 탑재된 컴퓨팅 장치 | |
KR20220116041A (ko) | 이기종 메모리 시스템용 시그널링 | |
JP2009505180A (ja) | 少なくとも2つの処理ユニットと、及び少なくとも1つのメモリとを有する計算機システム内に形成される及び記憶装置、及びそれによる記憶方法 | |
US9496009B2 (en) | Memory with bank-conflict-resolution (BCR) module including cache | |
CN114116533B (zh) | 利用共享存储器存储数据的方法 | |
US8495303B2 (en) | Processor and computer system with buffer memory | |
CN115686349A (zh) | 维持数据一致性的存储系统及其操作方法 | |
US20050013181A1 (en) | Assisted memory device with integrated cache | |
JP2018049672A (ja) | メモリシステムおよびプロセッサシステム | |
US8521951B2 (en) | Content addressable memory augmented memory | |
KR101967857B1 (ko) | 다중 캐시 메모리를 구비한 지능형 반도체 장치 및 지능형 반도체 장치에서의 메모리 접근 방법 | |
JP2005078647A (ja) | マルチバンクメモリのスケジューリング方法 | |
US6836828B2 (en) | Instruction cache apparatus and method capable of increasing a instruction hit rate and improving instruction access efficiency | |
CN112631960B (zh) | 高速缓冲存储器的扩展方法 | |
CN1675717A (zh) | 多端口存储单元 | |
JP4769936B2 (ja) | メモリコントローラを備えた情報処理システム | |
JP2004240520A (ja) | ノンキャッシュ領域内高速メモリアクセス方法 | |
JPH04353949A (ja) | キャッシュメモリ制御方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20100212 |
|
PG1501 | Laying open of application | ||
A201 | Request for examination | ||
PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20150212 Comment text: Request for Examination of Application Patent event code: PA02011R01I Patent event date: 20100212 Comment text: Patent Application |
|
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20151020 Patent event code: PE09021S01D |
|
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: 20160426 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20160727 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20160728 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
PR1001 | Payment of annual fee |
Payment date: 20200630 Start annual number: 5 End annual number: 5 |
|
PR1001 | Payment of annual fee |
Payment date: 20210628 Start annual number: 6 End annual number: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20220622 Start annual number: 7 End annual number: 7 |
|
PR1001 | Payment of annual fee |
Payment date: 20230621 Start annual number: 8 End annual number: 8 |
|
PR1001 | Payment of annual fee |
Payment date: 20240626 Start annual number: 9 End annual number: 9 |