TWI409816B - System and method for resolving request collision in a single-port sram - Google Patents

System and method for resolving request collision in a single-port sram Download PDF

Info

Publication number
TWI409816B
TWI409816B TW98106434A TW98106434A TWI409816B TW I409816 B TWI409816 B TW I409816B TW 98106434 A TW98106434 A TW 98106434A TW 98106434 A TW98106434 A TW 98106434A TW I409816 B TWI409816 B TW I409816B
Authority
TW
Taiwan
Prior art keywords
sram
data
request
temporary storage
storage area
Prior art date
Application number
TW98106434A
Other languages
Chinese (zh)
Other versions
TW201032230A (en
Inventor
Chun Yu Chiu
Original Assignee
Himax Tech Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Himax Tech Ltd filed Critical Himax Tech Ltd
Priority to TW98106434A priority Critical patent/TWI409816B/en
Publication of TW201032230A publication Critical patent/TW201032230A/en
Application granted granted Critical
Publication of TWI409816B publication Critical patent/TWI409816B/en

Links

Abstract

A system and method for resolving request collision in a single-port static random access memory (SRAM) are disclosed. A first SRAM part and a second SRAM part of the single-port SRAM are accessed in turn. When request collision occurs, data is temporarily stored in a first or second shadow bank associated with the first or the second SRAM part which is under access. The temporarily stored data is then transferred, at a later time, to an associated one of the first/second SRAM parts while the other one of the first/second SRAM parts is being accessed.

Description

解決單埠靜態隨機存取記憶體之請求衝突的系統及方法System and method for solving request conflict of static random access memory

本發明係有關靜態隨機存取記憶體(SRAM),特別是關於一種解決單埠(single-port)SRAM之請求衝突(request collision)的系統及方法。The present invention relates to static random access memory (SRAM), and more particularly to a system and method for addressing a request collision of a single-port SRAM.

靜態隨機存取記憶體(SRAM)為半導體記憶體之一種,由於其不需進行週期性的更新(refresh),因此速度較動態隨機存取記憶體(DRAM)快。鑑於此,SRAM常作為平面顯示器(例如液晶顯示器)驅動器之視訊記憶體。SRAM可分為單埠(single-port)SRAM及多埠(multi-port)SRAM。前者僅具有單一讀/寫埠,而後者則具有二或多個讀/寫埠,可於同一時間讓多個請求者進行存取。由於多埠SRAM佔用較大晶片面積且耗用較多功率,因此,單埠SRAM較常用於可攜式或手持電子裝置中,例如行動電話。Static Random Access Memory (SRAM) is a type of semiconductor memory that is faster than dynamic random access memory (DRAM) because it does not require periodic refreshes. In view of this, SRAM is often used as a video memory for a flat panel display (such as a liquid crystal display) driver. SRAM can be classified into single-port SRAM and multi-port SRAM. The former has only a single read/write 埠, while the latter has two or more read/write 埠, allowing multiple requesters to access at the same time. Since multi-turn SRAMs occupy a large wafer area and consume more power, 單埠SRAM is more commonly used in portable or handheld electronic devices, such as mobile phones.

然而,高容量且低功率之單埠SRAM於碰到請求衝突(request collision)或者同一時脈週期出現多個請求時,則會造成速度的驟減。第一A圖例示傳統單埠SRAM的請求衝突之時序圖。於圖式中,一主機(host)送出外部請求(external request)EXT-REQUEST以依序寫入資料(資料1、資料2、資料3、資料4)至單埠SRAM。然而,於同一週期1內,內部請求(internal request)INT_RD也要求讀取資料。換句話說,內部請求和外部請求對於資料1發生了請求衝突。為了解決這個問題,SRAM的序列器(sequencer)提供如第一B圖所示的修正時序,其中的信號RAM_CLK係自外部請求EXT_REQUEST所導出,而信號RAM_LE則自內部請求INT_RD所導出。當資料1於週期1寫入SRAM後,下一週期(亦即,週期2)則讓內部請求專屬使用。資料2的外部請求被延後至下一週期(亦即,週期3),而其餘的資料3、資料4也分別延後一個週期。However, a high-capacity, low-power SRAM can cause a sudden drop in speed when it encounters a request collision or multiple requests in the same clock cycle. The first A diagram illustrates a timing diagram of a request collision of a conventional 單埠SRAM. In the figure, a host sends an external request EXT-REQUEST to sequentially write data (data 1, data 2, data 3, data 4) to the 單埠SRAM. However, in the same cycle 1, the internal request INT_RD also requires reading data. In other words, internal requests and external requests have a request conflict for material 1. To solve this problem, the SRAM sequencer provides the modified timing as shown in Figure B, where the signal RAM_CLK is derived from the external request EXT_REQUEST and the signal RAM_LE is derived from the internal request INT_RD. When data 1 is written to SRAM in cycle 1, the next cycle (ie, cycle 2) allows the internal request to be used exclusively. The external request for data 2 is deferred to the next cycle (ie, cycle 3), while the remaining data 3 and 4 are also delayed by one cycle.

如上所述,請求衝突可藉由延後所有請求的週期來得到解決,然而此將造成傳統單埠SRAM的速度驟減(亦即,每當發生請求衝突時即會伴隨一個週期的延後)。鑑於此,因此亟需提出一種新穎的單埠SRAM架構及方法,用以增進速度效能。As mentioned above, the request collision can be resolved by delaying the cycle of all requests, however this will cause the speed of the traditional 單埠SRAM to drop sharply (that is, each time a request collision occurs, it will be accompanied by a delay of one cycle) . In view of this, it is urgent to propose a novel 單埠SRAM architecture and method for improving speed performance.

鑑於上述,本發明的目的之一在於提出一系統及方法,當單埠SRAM發生請求衝突時,不需延後其週期,因而得以增進速度效能,且能同時維持其高容量及低功率之優點。In view of the above, one of the objects of the present invention is to provide a system and method that, when a request conflict occurs in a SRAM, does not need to delay its cycle, thereby improving speed performance and maintaining the advantages of high capacity and low power at the same time. .

根據本發明實施例,單埠SRAM包含第一SRAM部分及第二SRAM部分,其被依序存取。單埠SRAM還包含第一暫存區及第二暫存區,用以暫存至少一資料及一位址,其中第一暫存區對應於第一SRAM部分,且第二暫存區對應於第二SRAM部分。SRAM控制器產生控制信號,用以管理進出單埠SRAM的資料流。序列器根據SRAM控制器之控制信號以導出序列信號,用以控制第一/第二SRAM部分及第一/第二暫存區的時序。第一匯流排讓第一SRAM部分、第一暫存區得以和序列器通信,而第二匯流排讓第二SRAM部分、第二暫存區得以和序列器通信。根據本實施例,當請求衝突發生時,資料則暫存於正進行存取之第一/第二SRAM部分所對應的第一/第二暫存區。於後續期間,當第一/第二SRAM部分的其中一個被存取時,暫存資料則同時傳送至第一/第二SRAM部分的另一個。According to an embodiment of the invention, the 單埠SRAM includes a first SRAM portion and a second SRAM portion that are sequentially accessed. The SRAM further includes a first temporary storage area and a second temporary storage area for temporarily storing at least one data and an address, wherein the first temporary storage area corresponds to the first SRAM part, and the second temporary storage area corresponds to the first temporary storage area The second SRAM part. The SRAM controller generates control signals for managing the flow of data into and out of the SRAM. The sequencer derives a sequence signal according to a control signal of the SRAM controller for controlling timing of the first/second SRAM portion and the first/second temporary storage area. The first bus bar allows the first SRAM portion, the first temporary storage area to communicate with the sequencer, and the second bus line allows the second SRAM portion and the second temporary storage area to communicate with the sequencer. According to this embodiment, when a request collision occurs, the data is temporarily stored in the first/second temporary storage area corresponding to the first/second SRAM portion being accessed. During the subsequent period, when one of the first/second SRAM sections is accessed, the temporary data is simultaneously transferred to the other of the first/second SRAM sections.

第二圖之方塊圖顯示本發明實施例為解決單埠(single-port)靜態隨機存取記憶體(SRAM)100之請求衝突的系統1。在本實施例中,系統1係適用於可攜式或手持式電子裝置(例如行動電話)的平面顯示器(例如液晶顯示器)驅動器,然而,本實施例所揭露之系統1同樣可適用於其他的電子裝置中。The block diagram of the second diagram shows a system 1 for addressing a request collision of a single-port static random access memory (SRAM) 100 in accordance with an embodiment of the present invention. In this embodiment, the system 1 is suitable for a flat panel display (for example, a liquid crystal display) driver of a portable or handheld electronic device (for example, a mobile phone). However, the system 1 disclosed in the embodiment is equally applicable to other systems. In an electronic device.

SRAM 100通常分為二部分:第一SRAM部分(或稱SRAM左部)10A及第二SRAM部分(或稱SRAM右部)10B。一些邏輯電路(未顯示於圖式中)則安排於這兩部分(10A、10B)的中間,用以得到較佳的時序。每一部分10A/10B通常又包含一或多組(bank)記憶區。在本實施例中,第一SRAM部分10A及第二SRAM部分10B係被依序存取。例如,第一資料被寫入第一SRAM部分10A,接著,將第二資料寫入第二SRAM部分10B。接下來,第三資料則又寫入第一SRAM部分10A,再將第四資料寫入第二SRAM部分10B。在本實施例中,第一(左)暫存區(又稱為影暫存區,shadow bank)12A對應至第一SRAM部分10A,而第二(右)暫存區(又稱為影暫存區,shadow bank)12B對應至第二SRAM部分10B。其中,第一暫存區12A可暫存至少一資料及位址,而第二暫存區12B也可暫存至少一資料及位址。The SRAM 100 is generally divided into two parts: a first SRAM portion (or SRAM left portion) 10A and a second SRAM portion (or SRAM right portion) 10B. Some logic circuits (not shown) are arranged in the middle of the two parts (10A, 10B) for better timing. Each portion of 10A/10B typically contains one or more banks of memory. In the present embodiment, the first SRAM portion 10A and the second SRAM portion 10B are sequentially accessed. For example, the first material is written to the first SRAM portion 10A, and then the second material is written to the second SRAM portion 10B. Next, the third data is again written to the first SRAM portion 10A, and the fourth data is written to the second SRAM portion 10B. In this embodiment, the first (left) temporary storage area (also referred to as a shadow bank) 12A corresponds to the first SRAM part 10A, and the second (right) temporary storage area (also known as the shadow temporary stage) The shadow bank 12B corresponds to the second SRAM portion 10B. The first temporary storage area 12A can temporarily store at least one data and address, and the second temporary storage area 12B can temporarily store at least one data and address.

於系統1的架構中,SRAM控制器14用以管理進出SRAM 100的資料流。例如,SRAM控制器14可藉由資料線、位址線及(外部)請求輸入而和行動電話的主機進行通信。藉此,SRAM控制器14產生控制信號並傳送至SRAM 100的序列器(sequencer)16。例如,當主機傳送一外部請求以寫入資料至SRAM 100時,SRAM控制器14會產生一外部請求EXT_REUEST。而當顯示器需要顯示資料時,會發出一內部請求INT_RD並輸入至序列器16。信號Dummy_Request_Enable及信號Active_Window_Odd將於後續說明。In the architecture of system 1, SRAM controller 14 is used to manage the flow of data into and out of SRAM 100. For example, the SRAM controller 14 can communicate with the host of the mobile phone by means of a data line, an address line, and an (external) request input. Thereby, the SRAM controller 14 generates a control signal and transmits it to the sequencer 16 of the SRAM 100. For example, when the host transmits an external request to write data to the SRAM 100, the SRAM controller 14 generates an external request EXT_RE. UEST. When the display needs to display the data, an internal request INT_RD is issued and input to the sequencer 16. The signal Dummy_Request_Enable and the signal Active_Window_Odd will be described later.

接下來,序列器16根據SRAM控制器14的控制信號而產生一些序列信號,用以控制第一/第二SRAM部分10A/10B及第一/第二暫存區12A/12B的時序。在這些信號當中,信號RAM_CLK係導自外部請求EXT_REUEST,而信號RAM_LE則導自內部請求INT_RD。信號SHADOW_CLK則提供時脈給第一/第二暫存區12A/12B。Next, the sequencer 16 generates sequence signals for controlling the timing of the first/second SRAM sections 10A/10B and the first/second temporary storage areas 12A/12B according to the control signals of the SRAM controller 14. Among these signals, the signal RAM_CLK is derived from the external request EXT_RE UEST, while the signal RAM_LE is derived from the internal request INT_RD. The signal SHADOW_CLK provides a clock to the first/second buffer area 12A/12B.

第一SRAM部分/暫存區10A/12A及第二SRAM部分/暫存區10B/12B藉由第一匯流排(左位址線(address_L)、左資料線(data_L))及第二匯流排(右位址線(address_R)、右資料線(data_R))分別和序列器16通信。第一SRAM部分10A和第二SRAM部分10B各自具有其解碼器(未顯示於圖式中)。The first SRAM portion/temporary storage area 10A/12A and the second SRAM portion/temporary storage area 10B/12B are provided by the first bus bar (left address line (address_L), left data line (data_L)) and the second bus bar (The right address line (address_R) and the right data line (data_R)) communicate with the sequencer 16, respectively. The first SRAM portion 10A and the second SRAM portion 10B each have their decoder (not shown in the drawings).

SRAM 100還包含第一閂鎖(latch)11A和第二閂鎖11B,其分別對應至第一/第二SRAM部分10A/10B。當內部請求INT_RD自主機發出後,閂鎖(latch)11A/11B則用以自第一/第二SRAM部分10A/10B讀取及儲存整行的顯示資料。The SRAM 100 also includes a first latch 11A and a second latch 11B that correspond to the first/second SRAM portions 10A/10B, respectively. When the internal request INT_RD is issued from the host, the latch 11A/11B is used to read and store the entire line of display material from the first/second SRAM portion 10A/10B.

第三A圖顯示本實施例SRAM 100的第一請求衝突例之時序圖。於圖式中,主機傳送外部請求EXT_REQEUST用以依序將資料(資料1、資料2、資料3、資料4)於相對應週期(週期1、週期2、週期3、週期4)內寫至SRAM 100。然而,於週期1內,內部請求INT_RD也同時要求讀取資料。因此,內部請求和外部請求對於資料1發生了請求衝突。為了解決此問題,序列器16提供如第三B圖所示的修正時序,其中的信號RAM_CLK係自外部請求EXT_REQUEST所導出,而信號RAM_LE則自內部請求INT_RD所導出。當資料1於週期1(藉由左資料線(data_L))寫至第一SRAM部分10A後,下一週期(亦即,週期2)則讓內部請求RAM_LE專屬使用。在此同時,於暫存區時脈SHADOW_CLK的控制下,資料2被寫至第二暫存區12B內。於接下來的週期3,資料3(藉由左資料線(data_L))直接寫至第一SRAM部分10A,同一時間,資料2則從第二暫存區12B傳送至第二SRAM部分10B。其餘資料(亦即,資料4及後續資料)則是依照其原本的週期進行資料的寫入。根據本實施例,第三B圖之時序並不需要延後週期以解決請求衝突問題,反觀第一B圖之時序則需要延後週期。藉此,本發明實施例的速度不會受到影響。The third A diagram shows a timing chart of the first request collision example of the SRAM 100 of the present embodiment. In the figure, the host transmits an external request EXT_REQEUST to sequentially write data (data 1, data 2, data 3, data 4) to the SRAM in the corresponding cycle (cycle 1, cycle 2, cycle 3, cycle 4). 100. However, in cycle 1, the internal request INT_RD also requires reading data. Therefore, internal requests and external requests have a request conflict for material 1. To solve this problem, the sequencer 16 provides a modified timing as shown in FIG. B, in which the signal RAM_CLK is derived from the external request EXT_REQUEST and the signal RAM_LE is derived from the internal request INT_RD. When the data 1 is written to the first SRAM portion 10A in cycle 1 (by the left data line (data_L)), the next cycle (ie, cycle 2) allows the internal request RAM_LE to be exclusively used. At the same time, under the control of the temporary sector clock SHADOW_CLK, the data 2 is written into the second temporary storage area 12B. In the next cycle 3, the data 3 (by the left data line (data_L)) is directly written to the first SRAM portion 10A, and at the same time, the data 2 is transferred from the second temporary storage area 12B to the second SRAM portion 10B. The rest of the information (ie, data 4 and subsequent information) is written in accordance with its original cycle. According to the embodiment, the timing of the third B graph does not require a delay period to solve the request conflict problem, and the timing of the first B graph requires a delay period. Thereby, the speed of the embodiment of the present invention is not affected.

第四A圖顯示本實施例SRAM 100的第二請求衝突例之時序圖。時序圖類似於第三A圖,不同的是,資料2為最後一筆資料,其後並無資料3或資料4。第四B圖顯示為解決第四A圖之請求衝突問題所提出之修正時序。當資料2於週期2寫至第二暫存區12B後,SRAM控制器14產生虛擬請求(dummy request)Dummy_Request_Enable,使得資料2得以從第二暫存區12B傳送至第二SRAM部分10B。一般來說,於符合下列情形之一時,SRAM控制器14會於時間t產生虛擬請求Dummy_Request_Enable:當離開一主機請求主動視窗(host request active window)時,或者離開記憶體存取命令(memory access command)時。在本說明書中,上述之「主動視窗」係由主機所請求決定的,其用以通知SRAM 100所需求的更新區域。The fourth A diagram shows a timing chart of the second request collision example of the SRAM 100 of the present embodiment. The timing diagram is similar to the third A diagram. The difference is that the data 2 is the last data, and there is no data 3 or data 4 thereafter. Figure 4B shows the timing of the correction proposed to solve the request conflict problem of Figure 4A. After the data 2 is written to the second temporary storage area 12B in the cycle 2, the SRAM controller 14 generates a dummy request Dummy_Request_Enable so that the material 2 can be transferred from the second temporary storage area 12B to the second SRAM portion 10B. In general, the SRAM controller 14 generates a virtual request Dummy_Request_Enable at time t when one of the following conditions is met: when leaving a host request active window, or leaving a memory access command (memory access command) )Time. In the present specification, the above-mentioned "active window" is determined by the host to notify the update area required by the SRAM 100.

第五A圖顯示本實施例SRAM 100的第三請求衝突例之主機請求主動視窗(host request active window)50。主機請求主動視窗50由SRAM控制器14決定。在本例子中,主動視窗50的最後一筆資料(資料3)為奇序列資料。第一行的最後一筆資料(資料3)和第二行的第一筆資料(資料4)同樣對應至相同的SRAM部分(亦即,第一SRAM部分10A)。如果請求衝突發生在資料3之前,則資料3會於週期3暫存於第一暫存區12A。由於資料4也是對應至第一SRAM部分10A,因此,資料3和資料4不能於同一時間同時寫至第一SRAM部分10A。為了解決此問題,如第五B圖所示的修正時序,將資料3一直保持於第一暫存區12A內,直到兩個週期以後(亦即,於週期5時),資料3才被傳送至第一SRAM部分10A,而資料5則同時被寫至第二SRAM部分10B。上述奇序列資料3的存取係受控於主動(asserted)的Active_Window_Odd(主動視窗奇序列)信號,其由SRAM控制器14所產生。The fifth A diagram shows the host request active window 50 of the third request collision example of the SRAM 100 of the present embodiment. The host request active window 50 is determined by the SRAM controller 14. In this example, the last data (data 3) of the active window 50 is an odd sequence of data. The last data (data 3) of the first line and the first data (data 4) of the second line also correspond to the same SRAM portion (i.e., the first SRAM portion 10A). If the request conflict occurs before the material 3, the data 3 is temporarily stored in the first temporary storage area 12A in the period 3. Since the material 4 also corresponds to the first SRAM portion 10A, the material 3 and the material 4 cannot be simultaneously written to the first SRAM portion 10A at the same time. In order to solve this problem, as shown in the correction timing shown in FIG. 5B, the data 3 is kept in the first temporary storage area 12A until after two cycles (that is, at the time of the cycle 5), the data 3 is transmitted. To the first SRAM portion 10A, the material 5 is simultaneously written to the second SRAM portion 10B. The access of the odd sequence data 3 described above is controlled by an asserted Active_Window_Odd (active window odd sequence) signal, which is generated by the SRAM controller 14.

第六A圖顯示本實施例SRAM 100的第四請求衝突例之主機請求主動視窗(host request active window)60。在本例子中,主動視窗60的最後一筆資料(資料4)為偶序列資料。第一行的最後一筆資料(資料4)和第二行的第一筆資料(資料5)對應至不同的SRAM部分(亦即,分別為第二SRAM部分10B、第一SRAM部分10A)。如果請求衝突發生在資料4之前,則資料4會暫存於第二暫存區12B。由於資料5係對應至第一SRAM部分10A,因此,資料4和資料5可於同一時間同時傳送/寫至第二SRAM部分10B及第一SRAM部分10A,如第六B圖所示的時序圖。上述偶序列資料4的存取係受控於非主動(de-asserted)的Active_Window_Odd(主動視窗奇序列)信號,其由SRAM控制器14所產生。The sixth A diagram shows a host request active window 60 of the fourth request conflict example of the SRAM 100 of the present embodiment. In this example, the last data (information 4) of the active window 60 is even sequence data. The last data (data 4) of the first line and the first data (data 5) of the second line correspond to different SRAM parts (i.e., the second SRAM part 10B, the first SRAM part 10A, respectively). If the request conflict occurs before the data 4, the data 4 is temporarily stored in the second temporary storage area 12B. Since the material 5 corresponds to the first SRAM portion 10A, the data 4 and the data 5 can be simultaneously transferred/written to the second SRAM portion 10B and the first SRAM portion 10A at the same time, as shown in the timing chart of FIG. . The access of the even sequence data 4 described above is controlled by a de-asserted Active_Window_Odd (active window odd sequence) signal, which is generated by the SRAM controller 14.

以上所述僅為本發明之較佳實施例而已,並非用以限定本發明之申請專利範圍;凡其它未脫離發明所揭示之精神下所完成之等效改變或修飾,均應包含在下述之申請專利範圍內。The above description is only the preferred embodiment of the present invention, and is not intended to limit the scope of the present invention; all other equivalent changes or modifications which are not departing from the spirit of the invention should be included in the following Within the scope of the patent application.

1...解決單埠SRAM請求衝突的系統1. . . System for resolving 單埠SRAM request conflicts

10A...第一SRAM部分(SRAM左部)10A. . . First SRAM section (left of SRAM)

10B...第二SRAM部分(SRAM右部)10B. . . Second SRAM section (SRAM right)

11A...第一閂鎖11A. . . First latch

11B...第二閂鎖11B. . . Second latch

12A...第一(左)暫存區12A. . . First (left) temporary storage area

12B...第二(右)暫存區12B. . . Second (right) temporary storage area

16...序列器16. . . Sequencer

14...SRAM控制器14. . . SRAM controller

100...SRAM100. . . SRAM

EXT_REQUEST...外部請求EXT_REQUEST. . . External request

INT_RD...內部請求INT_RD. . . Internal request

RAM_CLK...外部請求之導出信號RAM_CLK. . . External request export signal

RAM_LE...內部請求之導出信號RAM_LE. . . Internal request export signal

Dummy_Request_Enable...虛擬請求Dummy_Request_Enable. . . Virtual request

Active_Window_Odd...主動視窗奇序列信號Active_Window_Odd. . . Active window odd sequence signal

SHADOW_CLK...(第一/第二)暫存區時脈SHADOW_CLK. . . (first/second) temporary storage area clock

data_L...左資料線data_L. . . Left data line

data_R...右資料線data_R. . . Right data line

address_L...左位址線address_L. . . Left address line

address_R...右位址線address_R. . . Right address line

第一A圖例示傳統單埠SRAM的請求衝突之時序圖。The first A diagram illustrates a timing diagram of a request collision of a conventional 單埠SRAM.

第一B圖顯示為解決第一圖請求衝突之修正時序圖。The first B diagram shows a modified timing diagram for resolving the first graph request conflict.

第二圖之方塊圖顯示本發明實施例為解決單埠SRAM之請求衝突的系統。The block diagram of the second figure shows a system for solving the request conflict of the SRAM in the embodiment of the present invention.

第三A圖顯示本實施例SRAM的第一請求衝突例之時序圖。The third A diagram shows a timing chart of the first request collision example of the SRAM of the present embodiment.

第三B圖顯示為解決第三A圖之請求衝突問題所提出之修正時序圖。The third B diagram shows the modified timing diagram proposed to solve the request conflict problem of the third A diagram.

第四A圖顯示本實施例SRAM的第二請求衝突例之時序圖。The fourth A diagram shows a timing chart of the second request collision example of the SRAM of the present embodiment.

第四B圖顯示為解決第四A圖之請求衝突問題所提出之修正時序圖。Figure 4B shows a modified timing diagram for resolving the request conflict problem of Figure 4A.

第五A圖顯示本實施例SRAM的第三請求衝突例之主機請求主動視窗。The fifth A diagram shows the host request active window of the third request conflict example of the SRAM of the embodiment.

第五B圖顯示為解決第五A圖之請求衝突問題所提出之修正時序圖。Figure 5B shows a modified timing diagram for resolving the request conflict problem of Figure 5A.

第六A圖顯示本實施例SRAM的第四請求衝突例之主機請求主動視窗。The sixth A diagram shows the host request active window of the fourth request conflict example of the SRAM of the embodiment.

第六B圖顯示為解決第六A圖之請求衝突問題所提出之修正時序圖。Figure 6B shows a modified timing diagram for resolving the request conflict problem of Figure 6A.

1...解決單埠SRAM請求衝突的系統1. . . System for resolving 單埠SRAM request conflicts

10A...第一SRAM部分(SRAM左部)10A. . . First SRAM section (left of SRAM)

10B...第二SRAM部分(SRAM右部)10B. . . Second SRAM section (SRAM right)

11A...第一閂鎖11A. . . First latch

11B...第二閂鎖11B. . . Second latch

12A...第一(左)暫存區12A. . . First (left) temporary storage area

12B...第二(右)暫存區12B. . . Second (right) temporary storage area

16...序列器16. . . Sequencer

14...SRAM控制器14. . . SRAM controller

100...SRAM100. . . SRAM

EXT_REQUEST...外部請求EXT_REQUEST. . . External request

INT_RD...內部請求INT_RD. . . Internal request

RAM_CLK...外部請求之導出信號RAM_CLK. . . External request export signal

RAM_LE...內部請求之導出信號RAM_LE. . . Internal request export signal

Dummy_Request_Enable...虛擬請求Dummy_Request_Enable. . . Virtual request

Active_Window_Odd...主動視窗奇序列信號Active_Window_Odd. . . Active window odd sequence signal

SHADOW_CLK...(第一/第二)暫存區時脈SHADOW_CLK. . . (first/second) temporary storage area clock

data_L...左資料線data_L. . . Left data line

data_R...右資料線data_R. . . Right data line

addressL...左位址線addressL. . . Left address line

addressR...右位址線addressR. . . Right address line

Claims (7)

一種解決單埠(single-port)靜態隨機存取記憶體(SRAM)之請求衝突的系統,包含:一第一SRAM部分及一第二SRAM部分,其被依序存取;一第一暫存區及一第二暫存區,用以暫存至少一資料及一位址,其中該第一暫存區對應於該第一SRAM部分,且該第二暫存區對應於該第二SRAM部分;一SRAM控制器,用以管理進出該單埠SRAM的資料流,該SRAM控制器產生控制信號;一序列器,其根據該SRAM控制器之控制信號以導出序列信號,用以控制該第一/第二SRAM部分及該第一/第二暫存區的時序;及一第一匯流排及一第二匯流排,其中該第一匯流排係讓第一SRAM部分、該第一暫存區得以和該序列器通信,其中該第二匯流排係讓第二SRAM部分、該第二暫存區得以和該序列器通信;其中,當請求衝突發生時,資料則暫存於正進行存取之第一/第二SRAM部分所對應的第一/第二暫存區,且 於後續期間,當第一/第二SRAM部分的其中一個被存取時,該暫存資料則同時傳送至第一/第二SRAM部分的另一個;其中上述之SRAM控制器決定一主動視窗,用以通知該單埠SRAM所需求的更新區域;當請求衝突發生且暫存資料離開該主動視窗時,該SRAM控制器產生虛擬請求信號。 A system for solving a request collision of a single-port static random access memory (SRAM), comprising: a first SRAM portion and a second SRAM portion, which are sequentially accessed; a first temporary storage And a second temporary storage area for temporarily storing at least one data and an address, wherein the first temporary storage area corresponds to the first SRAM part, and the second temporary storage area corresponds to the second SRAM part An SRAM controller for managing data flow into and out of the SRAM, the SRAM controller generates a control signal; a sequencer that derives a sequence signal according to a control signal of the SRAM controller to control the first a timing of the second SRAM portion and the first/second temporary storage area; and a first bus bar and a second bus bar, wherein the first bus bar allows the first SRAM portion and the first temporary storage area Communicating with the sequencer, wherein the second bus line allows the second SRAM portion and the second temporary storage area to communicate with the sequencer; wherein, when a request conflict occurs, the data is temporarily stored in the access a first/second temporary storage area corresponding to the first/second SRAM portion, and During the subsequent period, when one of the first/second SRAM portions is accessed, the temporary data is simultaneously transferred to the other of the first/second SRAM portions; wherein the SRAM controller determines an active window, The update area required to notify the SRAM; the SRAM controller generates a virtual request signal when a request conflict occurs and the temporary data exits the active window. 如申請專利範圍第1項所述解決單埠SRAM之請求衝突的系統,更包含至少一閂鎖(latch),對應至該第一/第二SRAM部分,用以自該第一/第二SRAM部分讀取及儲存整行的顯示資料。 The system for resolving the request conflict of the SRAM as described in claim 1, further comprising at least one latch corresponding to the first/second SRAM portion for using the first/second SRAM Partially read and store the display data of the entire line. 如申請專利範圍第1項所述解決單埠SRAM之請求衝突的系統,於最後一筆資料時,其中上述之SRAM控制器產生一虛擬請求,使得暫存資料得以傳送至對應的該第一或第二SRAM部分。 The system for resolving the request conflict of the SRAM as described in claim 1 of the patent application, wherein in the last data, the SRAM controller generates a virtual request, so that the temporary data is transmitted to the corresponding first or the first Two SRAM parts. 如申請專利範圍第1項所述解決單埠SRAM之請求衝突的系統,其中上述之序列器根據一主機所發出的外部請求而導出一外部請求信號,用以讓資料寫至該第一或第二SRAM部分。 A system for resolving a request conflict of a SRAM as described in claim 1, wherein the sequencer derives an external request signal according to an external request sent by a host for writing data to the first or the first Two SRAM parts. 如申請專利範圍第4項所述解決單埠SRAM之請求衝突的系統,其中該主機發出一內部請求至該序列器,用以請求顯示資料。 A system for resolving a request conflict of a SRAM as described in claim 4, wherein the host issues an internal request to the sequencer for requesting display of the material. 如申請專利範圍第1項所述解決單埠SRAM之請求衝突的系統,當上述之主動視窗的最後一筆資料為奇序列資料時,則暫存資料被保持二個週期時間才予以傳送。 For the system for resolving the request conflict of the SRAM as described in the first paragraph of the patent application, when the last data of the active window is odd sequence data, the temporary data is kept for two cycles before being transmitted. 如申請專利範圍第1項所述解決單埠SRAM之請求衝突的系統,當上述之主動視窗的最後一筆資料為偶序列資料時,則暫存資料被保持一個週期時間才予以傳送。For the system for resolving the request conflict of the SRAM as described in the first paragraph of the patent application, when the last data of the active window is the even sequence data, the temporary data is kept for one cycle time before being transmitted.
TW98106434A 2009-02-27 2009-02-27 System and method for resolving request collision in a single-port sram TWI409816B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW98106434A TWI409816B (en) 2009-02-27 2009-02-27 System and method for resolving request collision in a single-port sram

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW98106434A TWI409816B (en) 2009-02-27 2009-02-27 System and method for resolving request collision in a single-port sram

Publications (2)

Publication Number Publication Date
TW201032230A TW201032230A (en) 2010-09-01
TWI409816B true TWI409816B (en) 2013-09-21

Family

ID=44854829

Family Applications (1)

Application Number Title Priority Date Filing Date
TW98106434A TWI409816B (en) 2009-02-27 2009-02-27 System and method for resolving request collision in a single-port sram

Country Status (1)

Country Link
TW (1) TWI409816B (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4777485A (en) * 1985-09-13 1988-10-11 Sun Microsystems, Inc. Method and apparatus for DMA window display
US6144604A (en) * 1999-11-12 2000-11-07 Haller; Haggai Haim Simultaneous addressing using single-port RAMs
US6195721B1 (en) * 1994-02-03 2001-02-27 Tektronix, Inc. Inter-processor data transfer management
TW550569B (en) * 2001-08-03 2003-09-01 Fujitsu Ltd Semiconductor memory
US6933915B2 (en) * 2000-06-29 2005-08-23 Kabushiki Kaisha Toshiba Semiconductor device for driving liquid crystal and liquid crystal display apparatus
TW200847181A (en) * 2007-04-11 2008-12-01 Samsung Electronics Co Ltd A multipath accessible semiconductor memory device

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4777485A (en) * 1985-09-13 1988-10-11 Sun Microsystems, Inc. Method and apparatus for DMA window display
US6195721B1 (en) * 1994-02-03 2001-02-27 Tektronix, Inc. Inter-processor data transfer management
US6144604A (en) * 1999-11-12 2000-11-07 Haller; Haggai Haim Simultaneous addressing using single-port RAMs
US6933915B2 (en) * 2000-06-29 2005-08-23 Kabushiki Kaisha Toshiba Semiconductor device for driving liquid crystal and liquid crystal display apparatus
TW550569B (en) * 2001-08-03 2003-09-01 Fujitsu Ltd Semiconductor memory
TW200847181A (en) * 2007-04-11 2008-12-01 Samsung Electronics Co Ltd A multipath accessible semiconductor memory device

Also Published As

Publication number Publication date
TW201032230A (en) 2010-09-01

Similar Documents

Publication Publication Date Title
US8122186B2 (en) Memory device, memory system and dual port memory device with self-copy function
JP5893632B2 (en) Memory controller, system, and method for applying page management policy based on stream transaction information
US8730759B2 (en) Devices and system providing reduced quantity of interconnections
JP2002063069A (en) Memory controller, data processing system, and semiconductor device
CN106856098B (en) Device and method for refreshing DRAM or eDRAM
US11100013B2 (en) Scheduling of read and write memory access requests
KR20160116533A (en) Memory controller and memory system managing refresh operation and operating method thereof
CN109219850B (en) Delayed write back in memory
KR20170060739A (en) Semiconductor memory device and memory system including the same
JP2014154119A (en) Memory controller and semiconductor storage device
US10423548B2 (en) Memory controller, control method for the memory controller, and control method for memory
US7146454B1 (en) Hiding refresh in 1T-SRAM architecture
US7778103B2 (en) Semiconductor memory device for independently selecting mode of memory bank and method of controlling thereof
US8209478B2 (en) Single-port SRAM and method of accessing the same
JP4783501B2 (en) Semiconductor memory device
JP4407972B2 (en) Asynchronous semiconductor memory device
TWI409816B (en) System and method for resolving request collision in a single-port sram
JPH11353871A (en) Semiconductor apparatus
JP2002197864A (en) Multi-port memory and its control method
US20170075571A1 (en) Memory device and control method thereof
JP2006107245A (en) Memory controller
US20230266893A1 (en) Memory system including memory device and memory controller, and operating method thereof
JP2009217310A (en) Memory access method and memory access device
KR100672029B1 (en) Apparatus and method for reducing operation time delay generated DRAM hidden refresh operation
US9396783B2 (en) Magnetic random access memory with dynamic random access memory (DRAM)-like interface

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees