JP2008129671A - Pseudo dual port memory circuit - Google Patents

Pseudo dual port memory circuit Download PDF

Info

Publication number
JP2008129671A
JP2008129671A JP2006311075A JP2006311075A JP2008129671A JP 2008129671 A JP2008129671 A JP 2008129671A JP 2006311075 A JP2006311075 A JP 2006311075A JP 2006311075 A JP2006311075 A JP 2006311075A JP 2008129671 A JP2008129671 A JP 2008129671A
Authority
JP
Japan
Prior art keywords
port
clock
read
write
ram
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.)
Withdrawn
Application number
JP2006311075A
Other languages
Japanese (ja)
Inventor
Shinichiro Kobayashi
晋一郎 小林
Hideo Kato
秀雄 加藤
Yoshihisa Nakayama
義久 中山
Masayo Terada
昌代 寺田
Hiroaki Uno
弘晃 宇野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006311075A priority Critical patent/JP2008129671A/en
Publication of JP2008129671A publication Critical patent/JP2008129671A/en
Withdrawn legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a pseudo dual port memory circuit with a simple configurations using a plurality of single port RAMs of 1W2R or 1W1R. <P>SOLUTION: In this pseudo dual port memory circuit, two single port RAMs are provided with the same address space, and one single port RAM is provided with a write port synchronizing with the first clock, and the other is provided with a write port synchronizing with the second clock whose frequency is different from that of the first clock. This pseudo dual port memory circuit is provided with a flag processing part including the flag of each address of the signal port RAM, and the flag processing part is provided with a means for setting a flag corresponding to the write time of data in one of the signal ports RAM, and for setting the flag corresponding to the write time of data in the other single port. Read access to one of the single port RAM is respectively supplied to the read ports of its own single port RAM and the other single port RAM. This pseudo dual port memory circuit is provided with a means for selecting one read data corresponding to the state of the flag from the read data from the two single port RAMs. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明はシングルポートRAMやASIC内のシングルポートRAMを用いた擬似デュアルポートメモリ回路に関する。   The present invention relates to a pseudo dual port memory circuit using a single port RAM or a single port RAM in an ASIC.

2W2R(2ライトポート2リードポート)のデュアルポートメモリは,回路設計において応用範囲が広い。しかし,大容量かつ高速動作可能なデュアルポートメモリは高価であるためコストの面でデメリットとなる。これに対応するため,シングルポートメモリを用いる技術が提案されている。   The dual port memory of 2W2R (2 write ports and 2 read ports) has a wide application range in circuit design. However, the dual port memory capable of high capacity and high speed operation is expensive, which is disadvantageous in terms of cost. In order to cope with this, a technique using a single port memory has been proposed.

上記したように2W2Rのデュアルポートメモリは,高価であり大容量化するとコストがかかるという問題があり,更に複数ポートへの同時リード及びライトの競合制御が必要である。そのため,リードレイテンシ(リード遅延)やライトレイテンシ(書込み遅延)が変動し,バス制御信号であるビジー,レディなどのバスサイクルのウェイト制御が必要である。また,ウェイト制御を行わない場合は同時に複数ポートからのライトを行うと書込データが不定となり,優先制御などの処理もできない。   As described above, the 2W2R dual-port memory is expensive and has a problem that it costs more when the capacity is increased, and it is necessary to control simultaneous read and write to a plurality of ports. For this reason, read latency (read delay) and write latency (write delay) fluctuate, and bus cycle wait control such as busy and ready, which are bus control signals, is necessary. In addition, when wait control is not performed, if data is written from a plurality of ports at the same time, write data becomes indefinite, and processing such as priority control cannot be performed.

このようにデュアルポートメモリに問題があるため,近年,シングルポートメモリを複数個組み合わせて擬似デュアルポートメモリを実現する方法及び回路が提案されている。これにより,リードレイテンシ,ライトレイテンシ及びウェイト処理を極力削減することができる。そのような例の一つ(特許文献1参照)の構成を従来例の構成として図19に示す。   Since there is a problem with the dual port memory as described above, in recent years, a method and a circuit for realizing a pseudo dual port memory by combining a plurality of single port memories have been proposed. As a result, read latency, write latency, and wait processing can be reduced as much as possible. FIG. 19 shows a configuration of one such example (see Patent Document 1) as a configuration of a conventional example.

図19において,80,81は共に1ポートの入出力を持つ全く同一構成で同一のアドレス空間を有するシングルポートRAM,82は2ポート処理部,83は制御部,830はフラグレジスタ,830L,830RはシングルポートRAM80用のフラグ格納部とシングルポートRAM81用のフラグ格納部,84はポートPL1とポートPL2及びポートPR2の両方または一方に接続するか,ポートPR1とポートPL2及びポートPR2の両方または一方に接続するかの切替えを行う空間スイッチ,85は第1ポート部85L,第2ポート部85Rとからなり,第1ポート部85Lは読出制御信号RLと書込制御信号WLを外部から入力し,ウェイト信号WTLを外部に出力し,第2ポート部85Rは読出制御信号RRと書込制御信号WRを外部から入力し,ウェイト信号WTRを外部に出力し,BLとBRは入出力バスである。86と88は第1メモリアクセス用バス,87と89は第2メモリアクセス用バス,R1,R2はシングルポートRAM80,81の読出制御信号,W1,W2はシングルポートRAM80,81の書込制御信号である。   In FIG. 19, 80 and 81 are single port RAMs having the same configuration and the same address space with one port input / output, 82 is a 2-port processing unit, 83 is a control unit, 830 is a flag register, 830L, 830R Is a flag storage unit for the single port RAM 80 and a flag storage unit for the single port RAM 81, 84 is connected to the port PL1, the port PL2, and / or the port PR2, or both the port PR1, the port PL2, and the port PR2 The space switch 85 for switching whether to connect to the first port unit 85L and the second port unit 85R, the first port unit 85L inputs the read control signal RL and the write control signal WL from the outside, The wait signal WTL is output to the outside, and the second port unit 85R receives the read control signal RR and write control signal. Enter the WR externally outputs a wait signal WTR outside, BL and BR are input and output buses. 86 and 88 are first memory access buses, 87 and 89 are second memory access buses, R1 and R2 are read control signals for single port RAMs 80 and 81, and W1 and W2 are write control signals for single port RAMs 80 and 81. It is.

第1ポート部85Lからデータを書込む時,第1書込制御信号WLがイネーブルになり,バス入出力部BLからシングルポートRAM80とRAM81への書込アドレスと書込データを入力すると,制御部83は空間スイッチ84を制御することにより書込アドレス及び書込データの信号経路を切替えることによりシングルポートRAM1,RAM2のうちアクセス状態にない全てのRAMに書込データを,書込アドレスに書込む。この時,フラグレジスタ830のRAMの種別に対応したフラグ格納部830L,830Rにアドレス別に,書込みを行ったことを表すフラグが設定される。制御部83は読出時にフラグレジスタ830を参照することにより,アクセス状態になく読出アドレスに関してデータ書込み済みのシングルポートRAM1またはRAM2から,読出アドレスの格納データを読出す。書込み及び読出しは,第1ポート部85Lまたは第2ポート部85Rのそれぞれから等価な内容で行う。同時に同じアドレスへの書込みが2つのポートから発生すると,ウェイト信号WTL,WTRが発生してウェイト状態になる。
特開平6−60007号公報
When writing data from the first port unit 85L, the first write control signal WL is enabled, and when the write address and write data to the single port RAM 80 and RAM 81 are input from the bus input / output unit BL, the control unit 83 controls the space switch 84 to switch the signal path of the write address and write data, thereby writing the write data to all the RAMs that are not in the single port RAM1, RAM2 in the write address. . At this time, a flag indicating that writing has been performed is set for each address in the flag storage units 830L and 830R corresponding to the RAM type of the flag register 830. Control unit 83 refers to flag register 830 at the time of reading, and reads stored data at the read address from single port RAM 1 or RAM 2 in which the data is written with respect to the read address without being in the access state. Writing and reading are performed with equivalent contents from the first port unit 85L or the second port unit 85R. If writing to the same address occurs simultaneously from two ports, wait signals WTL and WTR are generated and a wait state is entered.
JP-A-6-60007

上記図19に示す従来例の技術では,データの書込みはアクセス状態でない全てのポートに対して実行され,その際に各アドレス毎に設けられ,且つ各ポートに対応した複数のフラグを設ける必要があり,更に第1ポートと第2ポートと2つのシングルポートメモリとの間のアクセス信号及びデータ信号の接続路を切替える空間スイッチとその制御部を設けるという複雑な構成を備える点で問題があった。更に,2つのポートから2つのシングルポートメモリの同じアドレスに書込む場合,ウェイト状態になるという問題があった。   In the technique of the conventional example shown in FIG. 19, data writing is executed for all ports that are not in an access state, and at that time, it is necessary to provide a plurality of flags corresponding to each port. In addition, there is a problem in that it has a complicated configuration in which a space switch for switching connection paths of access signals and data signals between the first port, the second port, and the two single-port memories and a control unit thereof are provided. . Furthermore, when writing from two ports to the same address in two single-port memories, there is a problem that a wait state occurs.

本発明は1W2Rや1W1RのシングルポートRAMを複数個使用して簡易な構成のデュアルポートメモリ回路を実現することを目的とする。   An object of the present invention is to realize a dual port memory circuit having a simple configuration using a plurality of single port RAMs of 1W2R and 1W1R.

図1は本発明の第1の原理構成である。図中,1−1,1−2は何れも1W2R(1ライトポート2リードポート)の第1のシングルポートRAM1(以下,シングルポートRAM1という)と第2のシングルポートRAM2(以下,シングルポートRAM2という)であり,両シングルポートRAMは同一のアドレス空間を備え,シングルポートRAM1の書込みは第1クロックCK1により実行され,シングルポートRAM2は第2クロックCK2で書込みが実行され,読出しは何れのシングルポートRAMも第1クロックCK1と第2クロックCK2の何れのクロックによっても実行される。シングルポートRAM1からの読出ポートはAとBがあり,Aは第1クロックCK1に同期した読出要求により読出されたデータが出力するポートで,Bは第2クロックCK2に同期した読出要求により読出されたデータが出力するポートである。同様にシングルポートRAM2にも読出ポートはAとBがあり,Aは第2クロックCK2に同期した読出要求により読出されたデータが出力するポートで,Bは第1クロックCK1に同期した読出要求により読出されたデータが出力するポートである。   FIG. 1 shows a first principle configuration of the present invention. In the figure, 1-1 and 1-2 are each a 1W2R (1 write port 2 read port) first single port RAM 1 (hereinafter referred to as single port RAM 1) and a second single port RAM 2 (hereinafter referred to as single port RAM 2). Both single port RAMs have the same address space, writing to the single port RAM 1 is executed by the first clock CK1, writing to the single port RAM 2 is executed by the second clock CK2, and reading is performed by any single The port RAM is also executed by either the first clock CK1 or the second clock CK2. The read ports from the single-port RAM 1 are A and B. A is a port for outputting data read by a read request synchronized with the first clock CK1, and B is read by a read request synchronized with the second clock CK2. This is the port that outputs the data. Similarly, the single-port RAM 2 has read ports A and B, A is a port for outputting data read by a read request synchronized with the second clock CK2, and B is a read request synchronized with the first clock CK1. This is the port to which the read data is output.

2−1,2−2は第1バスアドレスデコーダ,第2バスアドレスデコーダ,3はシングルポートRAM1とシングルポートRAM2の各アドレスに対応して設けられ,何れのRAMが最後に書込みをしたかを表示するフラグを設定保持し,読出し時にアドレスに対応して保持したフラグを出力するフラグ処理部,4−1,4−2は読出アドレスに対応したフラグに応じて読出データを選択する第1の読出データ選択部,第2の読出データ選択部である。A1,A2は書込み・読出しの制御信号,アドレス,書込みの場合は書込データを含む第1クロック(CK1)に同期した第1クロックアクセスが入力する第1の入力ポート及び第2クロック(CK2)に同期した第2クロックアクセスが入力する第2の入力ポート,R1,R2は第1クロックに同期した読出データが出力される第1の読出ポート及び第2クロックに同期した読出データが出力される第2の読出ポートである。   2-1 and 2-2 are the first bus address decoder, the second bus address decoder, 3 is provided corresponding to each address of the single port RAM 1 and the single port RAM 2, and which RAM has written last. Flag processing units for setting and holding a flag to be displayed and outputting a flag held corresponding to the address at the time of reading, 4-1 and 4-2 select read data according to the flag corresponding to the read address A read data selection unit and a second read data selection unit. A1 and A2 are write / read control signals, addresses, and in the case of write, the first input port and the second clock (CK2) to which the first clock access synchronized with the first clock (CK1) including the write data is input The second input port to which the second clock access synchronized with the first input, R1, R2 outputs the first read port that outputs the read data synchronized with the first clock and the read data synchronized with the second clock. Second read port.

書込みを行う場合,第1の入力ポートA1または第2の入力ポートA2から書込制御信号,アドレス,書込データが入力されると,第1バスアドレスデコーダ2−1または第2バスアドレスデコーダ2−2でアドレスがデコードされ,書込制御信号,アドレス及びデータを含む書込要求が対応するシングルポートRAM1またはシングルポートRAM2に供給される。また,シングルポートRAM1に対する書込みは第1クロック(CK1)に同期して実行され,シングルポートRAM2に対する書込みは第2クロック(CK2)に同期して実行され,従って,2つのシングルポートRAM1とシングルポートRAM2は同時に実行されることはなく,ライトの競合制御を行う必要がない。また,書込み時には,フラグ処理部3内の各アドレスに対応したフラグ(1ビット)のセットまたはリセットの駆動を行う。すなわち,シングルポートRAM1にデータが書込まれるとフラグ処理部3の中のシングルポートRAM1の書込アドレスに対応するフラグがリセットされ,シングルポートRAM2にデータが書込まれると,フラグ処理部3の中の該当アドレスに対応するフラグがセットされる。これにより,シングルポートRAM1または2の各アドレスについて何れの側に最後(最近)のデータが書込まれたかが,フラグ処理部3の該当アドレスのフラグの状態により決まる。   When writing, when a write control signal, address, and write data are input from the first input port A1 or the second input port A2, the first bus address decoder 2-1 or the second bus address decoder 2 -2, the address is decoded, and a write request including a write control signal, address and data is supplied to the corresponding single port RAM 1 or single port RAM 2. Further, writing to the single port RAM 1 is executed in synchronization with the first clock (CK1), and writing to the single port RAM 2 is executed in synchronization with the second clock (CK2). The RAM 2 is not executed at the same time, and there is no need to perform write contention control. At the time of writing, the flag (1 bit) corresponding to each address in the flag processing unit 3 is set or reset. That is, when data is written to the single port RAM 1, the flag corresponding to the write address of the single port RAM 1 in the flag processing unit 3 is reset, and when data is written to the single port RAM 2, the flag processing unit 3 A flag corresponding to the corresponding address is set. Thus, on which side the last (recent) data has been written for each address of the single port RAM 1 or 2 is determined by the flag state of the corresponding address of the flag processing unit 3.

読出しを行う場合,第1の入力ポートA1または第2の入力ポートA2の何れか一方から読出信号(アドレスと読出要求)を入力すると,対応する第1バスアドレスデコーダ2−1または第2バスアドレスデコーダ2−2でアドレスがデコードされると共に読出要求信号が発生する。読出要求信号(アドレスを含む)はシングルポートRAM1とシングルポートRAM2の両方に供給され,シングルポートRAM1及びRAM2で読出しが行われ,各シングルポートRAM1では第1クロックCK1に同期した読出しによりポートAから一方の読出データが出力され,第2クロックCK2に同期した読出しによりポートBから他方の読出データが出力される。同様に,シングルポートRAM2では第2クロックCK2に同期した読出しによりポートAから一方の読出データが出力され,第1クロックCK1に同期した読出しによりポートBから他方の読出データが出力される。両シングルポートRAMからの読出データは,同じクロックにより読出されたデータ同士が,第1の読出データ選択部4−1と第2の読出データ選択部4−2に入力する。   When reading, when a read signal (address and read request) is input from either the first input port A1 or the second input port A2, the corresponding first bus address decoder 2-1 or second bus address is input. An address is decoded by the decoder 2-2 and a read request signal is generated. A read request signal (including an address) is supplied to both the single port RAM1 and the single port RAM2, and reading is performed by the single port RAM1 and RAM2. Each single port RAM1 reads from the port A by reading in synchronization with the first clock CK1. One read data is output, and the other read data is output from the port B by reading in synchronization with the second clock CK2. Similarly, in the single port RAM 2, one read data is output from the port A by reading synchronized with the second clock CK 2, and the other read data is output from the port B by reading synchronized with the first clock CK 1. As the read data from both the single port RAMs, the data read by the same clock are input to the first read data selection unit 4-1 and the second read data selection unit 4-2.

一方,読出しの場合,読出アドレスが第1の読出データ選択部4−1と第2の読出データ選択部4−2にも入力され,フラグ処理部3から出力されている各アドレスに対応したフラグの中から読出アドレスに対応したフラグが選択されて,選択されたフラグ信号(セットまたはリセット)が第1の読出データ選択部4−1と第2の読出データ選択部4−2に入力され,各選択部4−1または4−2では2つのシングルポートRAM1とシングルポートRAM2からの読出データの中からフラグがリセットの場合,シングルポートRAM1からの読出データを選択し,フラグがセットの場合シングルポートRAM2からの読出データを選択することで,最新の書込データが出力される。   On the other hand, in the case of reading, the read address is also input to the first read data selection unit 4-1 and the second read data selection unit 4-2, and the flag corresponding to each address output from the flag processing unit 3 A flag corresponding to the read address is selected from among the signals, and the selected flag signal (set or reset) is input to the first read data selection unit 4-1 and the second read data selection unit 4-2. In each selection unit 4-1 or 4-2, when the flag is reset from the read data from the two single-port RAMs 1 and 2, the read data from the single-port RAM 1 is selected, and when the flag is set, the single By selecting read data from the port RAM 2, the latest write data is output.

なお,同一アドレスに同時に書込アクセスが発生した場合は,フラグ処理部3が一方のアクセス(例えば,シングルポートRAM1への書込アクセス)を優先的に入力するように決めておくことで,書込んだデータを安定して読出すことができる。   If write access occurs simultaneously at the same address, the flag processing unit 3 determines that one access (for example, write access to the single port RAM 1) should be input preferentially. The stored data can be read stably.

図2は本発明の第2の原理構成を示す。この第2の原理構成でも2つのシングルポートRAMを使用するが,1W1R(1ライトポート1リードポートを備えた)である点で第1の原理構成と異なり,更に第1の原理構成で備えたフラグ処理部を使用しない。   FIG. 2 shows a second principle configuration of the present invention. In this second principle configuration, two single-port RAMs are also used. However, the first principle configuration differs from the first principle configuration in that it is 1W1R (with one write port and one read port). Do not use the flag processing unit.

図2において,5は多重部,5aは多重用クロックを分周(図2の例では3分周)する分周カウンタ,5b〜5dはこの例では分周カウンタ5aのカウント数に対応して3個設けられた選択部,5eはオアゲート,6−1,6−2は何れも1W1R(1ライトポート1リードポート)の第1のシングルポートRAM3(以下,シングルポートRAM3という)と第2のシングルポートRAM4(シングルポートRAM4という)である。A10,A11は第1クロック(CK1)書込ポート,第2クロック(CK2)書込ポート,RQ1,RQ2はシングルポートRAM3,シングルポートRAM4に対する読出要求(読出アドレスを含む)ポート,R1,R2はシングルポートRAM3,RAM4の読出データの出力ポートである。   In FIG. 2, 5 is a multiplexing unit, 5a is a frequency dividing counter that divides the multiplexing clock (divided by 3 in the example of FIG. 2), and 5b to 5d correspond to the count number of the frequency dividing counter 5a in this example. Three selection units, 5e is an OR gate, 6-1 and 6-2 are both 1W1R (1 write port 1 read port) first single port RAM 3 (hereinafter referred to as single port RAM 3) and second This is a single port RAM 4 (referred to as a single port RAM 4). A10 and A11 are the first clock (CK1) write port, the second clock (CK2) write port, RQ1 and RQ2 are read request (including read address) ports for the single port RAM3 and single port RAM4, and R1 and R2 are This is an output port for read data of the single port RAM3 and RAM4.

第1クロック書込ポートA10,第2クロック書込ポートA11から個別に書込アクセス(書込要求及び書込データ)が多重部5に入力される。第1クロック書込ポートA10への書込アクセスは選択部5b,5cへ入力し,第2クロック書込ポートA11への書込アクセスは選択部5dへ入力する。選択部5b,5cは第1クロックの信号(第2クロックの2倍の周波数とする)を2分周した周波数で交互に駆動され,選択部5dは第2クロックの周波数で駆動される。多重用クロック(CK3)は第1クロックCK1と第2クロックCK2を加算した値以上の高い周波数であり,この説明では第1クロックCK1と第2クロックCK2を加算した周波数とすると,分周カウンタ5aで多重用クロック(CK3)を3分周すると,分周カウンタ5aの分周により発生した各カウント値(0,1,2)の出力を3つの選択部5b〜5dに一つずつ供給する。   Write access (write request and write data) is individually input to the multiplexing unit 5 from the first clock write port A10 and the second clock write port A11. Write access to the first clock write port A10 is input to the selectors 5b and 5c, and write access to the second clock write port A11 is input to the selector 5d. The selectors 5b and 5c are alternately driven at a frequency obtained by dividing the first clock signal (having a frequency twice that of the second clock) by two, and the selector 5d is driven at the frequency of the second clock. The multiplexing clock (CK3) has a frequency higher than the value obtained by adding the first clock CK1 and the second clock CK2, and in this description, when the frequency is the sum of the first clock CK1 and the second clock CK2, the frequency dividing counter 5a When the multiple clock (CK3) is divided by 3, the outputs of the count values (0, 1, 2) generated by the frequency division of the frequency division counter 5a are supplied to the three selection units 5b to 5d one by one.

これにより,分周カウンタ5aの3つの値により選択部5b〜5dが駆動され,第1クロックの2つの周期で選択部5bと5cが駆動されると共に分周カウンタ5aの2つの分周出力が発生するタイミングで選択部5b,5cが順番に駆動されて第1クロック書込ポートA10の書込アクセスがシングルポートRAM3とシングルポートRAM4に供給される。この時,第1クロック(CK1)書込ポートA10からの書込み回数(偶数回,奇数回)を認識し,偶数回の場合は選択部5bへ書込み指示を行い,奇数回の場合は選択部5cへ書込指示を行う。選択部5b,5cではこの書込指示を受け,分周カウンタ5aのカウント値を用いて選択部5bではカウント値0,選択部5cではカウント値1のときにオアゲート5eへ書込要求を発生する。選択部5b,5cにおいて書込指示が無い場合は,5eのオアゲートへ0を送出する。また,第2クロック(CK2)書込ポートA11からの書込要求は,選択部5dに通知され,選択部5dでは分周カウンタ5aのカウント値2のときにオアゲート5eへ書込要求を発生する。選択部5cにて書込要求が無い場合は,オアゲート5eへは0を送出する。これにより,分周カウンタ5aのカウント値が0,1,2の場合において,選択部5b,5c,5dの書込要求がオアゲート5eにて多重され,RAM3,RAM4で書込み処理が行われる。   As a result, the selectors 5b to 5d are driven by the three values of the frequency divider counter 5a, the selectors 5b and 5c are driven in two cycles of the first clock, and the two frequency divided outputs of the frequency divider counter 5a are output. The selection units 5b and 5c are sequentially driven at the timing of occurrence, and the write access of the first clock write port A10 is supplied to the single port RAM 3 and the single port RAM 4. At this time, the number of times of writing from the first clock (CK1) write port A10 (even number, odd number) is recognized, and if it is even number, a write instruction is given to the selector 5b, and if it is odd, the selector 5c. Write instruction to. The selectors 5b and 5c receive this write instruction and use the count value of the frequency dividing counter 5a to generate a write request to the OR gate 5e when the selector 5b has a count value of 0 and the selector 5c has a count value of 1. . When there is no write instruction in the selection units 5b and 5c, 0 is sent to the OR gate of 5e. The write request from the second clock (CK2) write port A11 is notified to the selection unit 5d, and the selection unit 5d generates a write request to the OR gate 5e when the count value of the frequency division counter 5a is 2. . If there is no write request in the selector 5c, 0 is sent to the OR gate 5e. Thereby, when the count values of the frequency dividing counter 5a are 0, 1, and 2, the write requests of the selection units 5b, 5c, and 5d are multiplexed by the OR gate 5e, and the write processing is performed in the RAM3 and RAM4.

この第2の原理構成によれば,多重部5において,2つの書込ポートへの書込アクセスを高速の多重用クロック(CK3)により時間が重ならないように二分割されて,書込動作が確実に実行される。   According to the second principle configuration, in the multiplexing unit 5, the write access to the two write ports is divided into two by the high-speed multiplexing clock (CK3) so that the time does not overlap, and the write operation is performed. Surely executed.

図2の構成における読出し動作は,シングルポートRAM3とシングルポートRAM4に対してそれぞれ第1クロック読出アクセスと第2クロック読出アクセスがそれぞれ独立して(アドレスや時間が同じでも異なっても)発生すると,それぞれのシングルポートRAMにおいて読出しが行われて,読出データが読出ポートR1,R2から出力される。   In the read operation in the configuration of FIG. 2, when the first clock read access and the second clock read access are independently generated (even if the address and time are the same) for the single port RAM 3 and the single port RAM 4, respectively. Reading is performed in each single port RAM, and read data is output from the read ports R1 and R2.

本発明によれば,シングルポートRAMを2つ実装して物理的に別々のメモリにデータを書込むことで,ライトデータを保障することができると共に,読出し時に2つのメモリから同時にデータを読出しても競合制御を不要とすることができる。   According to the present invention, write data can be guaranteed by mounting two single-port RAMs and writing data to physically separate memories, and data can be simultaneously read from the two memories at the time of reading. Can also eliminate the need for contention control.

本発明の第1の原理構成によれば,2つの1W2RのシングルポートRAMにデータを書込む時にどちらのメモリへのアクセスが新しいかを示すフラグをセットし,読出し時に両方のメモリから同時にデータを読出し,フラグビットを参照して読出データを選択することで,常に新しいデータを読出すことができ,競合制御が不要となり,リードレイテンシ(読出し遅延)を最小にすることができる。   According to the first principle configuration of the present invention, when writing data to two 1W2R single port RAMs, a flag indicating which memory access is new is set, and when reading, data is simultaneously read from both memories. By selecting read data with reference to the read and flag bits, new data can always be read, no conflict control is required, and read latency (read delay) can be minimized.

さらに,書込み,読出しで使用するクロックをそのままメモリに接続することで,クロック乗り換え回路を必要とせずシンプルな構成となり,回路規模の縮小及び低消費電力化が図れる。   Furthermore, by connecting the clock used for writing and reading as it is to the memory, it becomes a simple configuration without requiring a clock transfer circuit, and the circuit scale can be reduced and the power consumption can be reduced.

本発明の第2の原理構成によれば,2つの1W1RのシングルポートRAMに対して2つのポートからの書込アクセスに対して多重部により書込みのタイミングを分割することで書込みの競合制御を必要とせず,読出しは2つのシングルポートRAMに対して独立に行うことができる。   According to the second principle configuration of the present invention, write contention control is required by dividing the write timing by the multiplexing unit for write access from two ports for two 1W1R single port RAMs. Instead, reading can be performed independently for the two single-port RAMs.

図3は実施例1の構成を示す。この実施例1は上記図1に示す本発明の第1の原理構成に対応する。図中,1−1,1−2,2−1(66Mバスアドレスデコーダ),2−2(33Mバスアドレスデコーダ),3,4−1,4−2の各符号は上記図1の同一符号の各部に対応するが,第1のシングルポートRAM1と第2のシングルポートRAM2は4Kビット(4096ビット)の容量を備えている。また,シングルポートRAM1の書込み動作に使用する第1クロックCK1は66MHz(以下,66Mで表示),シングルポートRAM2の書込み動作に使用する第2クロックCK2は33MHz(以下,33Mで表示)であり,2つのシングルポートRAM1,2は何れも66Mと33Mで動作する2つの読出ポートを備え,それぞれのクロックに基づいた読出データが出力される。また,A1,A2は書込み,読出しの制御信号,アドレス,書込みの場合は書込データを含む66Mのクロックに同期した66Mクロックアクセスが入力する第1の入力ポート及び33Mのクロックに同期した33Mクロックアクセスが入力する第2の入力ポートであり,R1,R2はそれぞれ66M,33Mに同期した読出データが発生する出力ポートである。   FIG. 3 shows the configuration of the first embodiment. The first embodiment corresponds to the first principle configuration of the present invention shown in FIG. In the figure, 1-1, 1-2, 2-1 (66M bus address decoder), 2-2 (33M bus address decoder), 3, 4-1 and 4-2 are the same as those in FIG. The first single port RAM 1 and the second single port RAM 2 have a capacity of 4K bits (4096 bits). Further, the first clock CK1 used for the write operation of the single port RAM1 is 66 MHz (hereinafter referred to as 66M), and the second clock CK2 used for the write operation of the single port RAM2 is 33 MHz (hereinafter referred to as 33M). The two single port RAMs 1 and 2 each have two read ports operating at 66M and 33M, and read data based on the respective clocks is output. A1 and A2 are a control signal for writing and reading, an address, and in the case of writing, a first input port to which a 66M clock access synchronized with a 66M clock including write data is input and a 33M clock synchronized with a 33M clock A second input port to which access is input, and R1 and R2 are output ports for generating read data synchronized with 66M and 33M, respectively.

図4は実施例1のフラグ処理部の構成例を示す。フラグ処理部(図4の3)には,図3に示すシングルポートRAM1,2の容量(4096バイト)に対応した各アドレス0〜4095別に合計4096個のラッチ回路30−0〜30−4095(またはフリップフロップ回路)が設けられ,33M(第2クロックCK1)に同期した書込要求(33MHz write Request)の入力によりセットされ,66M(第1クロックCK1)に同期した書込要求(66MHz Write Request)の入力によりリセットされる。各ラッチからはフラグ0〜フラグ4095として“1”(シングルポートRAM1に66Mで最新のデータを書込んだ時)または“0”(シングルポートRAM2に第2クロックCK1の33Mで最新のデータを書込んだ時)が発生する。   FIG. 4 shows a configuration example of the flag processing unit of the first embodiment. In the flag processing unit (3 in FIG. 4), a total of 4096 latch circuits 30-0 to 30-4095 (for each address 0 to 4095 corresponding to the capacity (4096 bytes) of the single port RAMs 1 and 2 shown in FIG. Or a flip-flop circuit), which is set by the input of a write request (33 MHz write Request) synchronized with 33M (second clock CK1) and is synchronized with 66M (first clock CK1) (66MHz Write Request) ) To reset. From each latch, “1” (when the latest data is written to the single port RAM 1 at 66M) or “0” (the latest data is written to the single port RAM 2 at 33 M of the second clock CK1 as flag 0 to flag 4095. Occurs).

図5は第1の読出データ選択部(図3の4−1)の構成例を示し,40−1は選択部,41−1はアドレス選択部である。アドレス選択部41−1にはフラグ処理部(図3の3)から全アドレスに対応したフラグ(ラッチ出力)が入力され,書込アドレスの入力によりアドレスに対応したフラグが選択され,そのフラグが選択部40−1に入力する。このフラグが“0”ならシングルポートRAM1のAポートの読出データが選択され,フラグが“1”ならシングルポートRAM2のBポートの読出データが選択される。   FIG. 5 shows a configuration example of the first read data selection unit (4-1 in FIG. 3), 40-1 being a selection unit, and 41-1 being an address selection unit. A flag (latch output) corresponding to all addresses is input from the flag processing unit (3 in FIG. 3) to the address selection unit 41-1, and a flag corresponding to the address is selected by the input of the write address. It inputs into the selection part 40-1. If this flag is “0”, the read data of the A port of the single port RAM 1 is selected. If the flag is “1”, the read data of the B port of the single port RAM 2 is selected.

図6は第2の読出データ選択部(図3の4−2)の構成例を示し,40−2は選択部,41−2はアドレス選択部である。上記図5と同様にアドレス選択部41−2にはフラグ処理部から全アドレスに対応したフラグが入力され,書込アドレスに対応したフラグが選択され,そのフラグが選択部40−2に入力する。このフラグが“0”ならシングルポートRAM1のBポートの読出データが選択され,フラグが“1”ならシングルポートRAM2のAポートの読出データが選択される。   FIG. 6 shows a configuration example of the second read data selection unit (4-2 in FIG. 3), 40-2 is a selection unit, and 41-2 is an address selection unit. As in FIG. 5, the address selection unit 41-2 receives flags corresponding to all addresses from the flag processing unit, selects flags corresponding to the write address, and inputs the flags to the selection unit 40-2. . If this flag is “0”, the read data of the B port of the single port RAM 1 is selected, and if the flag is “1”, the read data of the A port of the single port RAM 2 is selected.

図7は実施例1における同時書込アクセスの場合の動作説明図である。図7において,1−1,1−2,2−1,2−2,3及び4−1,4−2の各符号は上記図3に示す同一符号と同じである。図8は図7の信号発生のタイムチャートであり,ポート1(66M) のa〜dは第1のシングルポートRAM1に関する信号であり,ポート2(33M) のe〜iは第2のシングルポートRAM2に関する信号である。   FIG. 7 is a diagram for explaining the operation in the case of simultaneous write access in the first embodiment. In FIG. 7, reference numerals 1-1, 1-2, 2-1, 2-2, 3 and 4-1, 4-2 are the same as those shown in FIG. FIG. 8 is a time chart of signal generation of FIG. 7, wherein a to d of the port 1 (66M) are signals relating to the first single port RAM1, and e to i of the port 2 (33M) are the second single port. This is a signal related to the RAM 2.

図7において,66Mバスアドレスデコーダ(第1のバスアドレスデコーダ)2−1と33Mバスアドレスデコーダ(第2のバスアドレスデコーダ)2−2へ,66Mのクロック(図8のa)に同期した第1の入力ポートA1及び33Mのクロック(図8のe)に同期した33Mクロックアクセスが入力する第2の入力ポートA2に書込アクセス信号が入力された場合のタイムチャートを図8に示し,図7に太線で示す信号が発生する。この図8の例では,入力ポートA1の書込アドレス(図8のb)が「a1」,書込データ(図8のc)が「b1」で,アクセス要求(request)の内容が書込み(図8のdの「write 」)である。一方,入力ポートA2の書込アドレス(図8のf)が「a1」,書込みデータ(図8のg)が「c1」で,アクセス要求の内容が書込み(図8のhの「write 」)である。図8の例では,入力ポートA2への書込み(データ「c1」)が時間的に早く発生したため,フラグ処理部3のアドレス「a1」に対応するフラグはセットされて“1”を出力する(図8のi)。この後,同じアドレス「a1」に対して入力ポートA1への書込み(データ「b1」)が発生し,同時にアドレス「a1」に対応するフラグはリセットされて“0”を出力する(図8のi)。   In FIG. 7, the 66M bus address decoder (first bus address decoder) 2-1 and the 33M bus address decoder (second bus address decoder) 2-2 are synchronized with the 66M clock (a in FIG. 8). FIG. 8 shows a time chart when a write access signal is input to the second input port A2 to which the 33M clock access synchronized with the clock of the input ports A1 and 33M (e in FIG. 8) is input. 7 generates a signal indicated by a thick line. In the example of FIG. 8, the write address (b in FIG. 8) of the input port A1 is “a1”, the write data (c in FIG. 8) is “b1”, and the content of the access request (request) is written ( ("Write" in d of FIG. 8). On the other hand, the write address (f in FIG. 8) of the input port A2 is “a1”, the write data (g in FIG. 8) is “c1”, and the content of the access request is written (“write” in h in FIG. 8). It is. In the example of FIG. 8, since writing (data “c1”) to the input port A2 occurred earlier in time, the flag corresponding to the address “a1” of the flag processing unit 3 is set and “1” is output ( I) in FIG. Thereafter, writing to the input port A1 (data “b1”) occurs for the same address “a1”, and at the same time, the flag corresponding to the address “a1” is reset and outputs “0” (FIG. 8). i).

図9は実施例1における66Mの入力ポートへの読出アクセスの説明図であり,図9において,1−1,1−2,2−1,2−2,3及び4−1,4−2の各符号は上記図3,図7に示す同一符号と同じである。図10は図9の信号発生のタイムチャートであり,ポート1(66M) のa〜gは第1のシングルポートRAM1に関する信号であり,ポート(33M) のh〜lは第2のシングルポートRAM2に関する信号である。   FIG. 9 is an explanatory diagram of read access to the 66M input port in the first embodiment. In FIG. 9, 1-1, 1-2, 2-1, 2-2, 3 and 4-1, 4-2. These symbols are the same as the same symbols shown in FIGS. FIG. 10 is a time chart of signal generation in FIG. 9, wherein a to g of the port 1 (66M) are signals relating to the first single port RAM1, and h to l of the port (33M) are the second single port RAM2. It is a signal regarding.

図10に示すタイムチャートでは,第1クロック66M(図10のa)の時間t1に入力ポートA1に書込み(write) のアクセスが発生してアドレスa1にデータb1が書込まれ,このアドレスa1のフラグが“0”にリセットされる(図10のb,c,d,l参照)。一方,シングルポートRAM2では第2クロック33M(図10のh)のT1のタイミング(上記t1より後の時間)でアドレスa1にデータc1が書込まれ,アドレスa1のフラグが“1”にセットされる。   In the time chart shown in FIG. 10, a write access occurs at the input port A1 at time t1 of the first clock 66M (a in FIG. 10), and the data b1 is written to the address a1. The flag is reset to “0” (see b, c, d, and l in FIG. 10). On the other hand, in the single port RAM2, the data c1 is written to the address a1 at the timing T1 of the second clock 33M (h in FIG. 10) (time after the t1), and the flag of the address a1 is set to “1”. The

この後,第1クロック66Mの時間t6のタイミングでアドレスa1への読出アクセス(図10のb,c)が入力ポートA1に発生すると,図9に太線により信号の発生の様子を示すように,シングルポートRAM1からは読出データb1が出力され(図10のe),シングルポートRAM2からは読出データc1が出力される(同f)。この時,フラグ処理部3からはアドレスa1のフラグとして“1”が出力される(図10のl)ので,第1の読出データ選択部4−1ではシングルポートRAM2から読出したデータc1が選択されて出力され,最新(最近)の書込データが得られる。   Thereafter, when a read access to the address a1 (b, c in FIG. 10) occurs at the input port A1 at the timing of the time t6 of the first clock 66M, as shown in FIG. The read data b1 is output from the single port RAM1 (e in FIG. 10), and the read data c1 is output from the single port RAM2 (same as f). At this time, since the flag processing unit 3 outputs “1” as the flag of the address a1 (l in FIG. 10), the first read data selection unit 4-1 selects the data c1 read from the single-port RAM 2. And the latest (recent) write data is obtained.

図11は実施例1における33Mの入力ポートへの読出アクセスの説明図であり,図11において,1−1,1−2,2−1,2−2,3及び4−1,4−2の各符号は上記図3に示す同一符号と同じである。図12は図11の信号発生のタイムチャートであり,ポート1(66M) のa〜dは第1のシングルポートRAM1に関する信号であり,ポート2(33M) のe〜lは第2のシングルポートRAM2に関する信号である。   FIG. 11 is an explanatory diagram of read access to the 33M input port in the first embodiment. In FIG. 11, 1-1, 1-2, 2-1, 2-2, 3 and 4-1, 4-2. Are the same as those shown in FIG. FIG. 12 is a time chart of signal generation in FIG. 11, wherein a to d of the port 1 (66M) are signals relating to the first single port RAM1, and e to l of the port 2 (33M) are the second single port. This is a signal related to the RAM 2.

図12に示すタイムチャートでは,第2クロック33M(図12のe)の時間T1に入力ポートA2に書込み(write) のアクセスが発生してアドレスa1にデータc1が書込まれ,このアドレスa1のフラグが“1”にセットされる(図12のf,g,h,l)。一方,シングルポートRAM1では第1クロック66M(図12のa)のt1のタイミング(上記T1より後の時間)でアドレスa1にデータb1が書込まれ,アドレスa1のフラグが“0”にリセットされる(図12のb,c,d,l)。   In the time chart shown in FIG. 12, a write access to the input port A2 occurs at time T1 of the second clock 33M (e in FIG. 12), and the data c1 is written to the address a1. The flag is set to “1” (f, g, h, l in FIG. 12). On the other hand, in the single port RAM1, the data b1 is written to the address a1 at the timing t1 of the first clock 66M (a in FIG. 12) (the time after T1), and the flag of the address a1 is reset to “0”. (B, c, d, l in FIG. 12).

この後,第2クロック33Mの時間T3のタイミングでアドレスa1への読出アクセス(図12のf,g)が入力ポートA2に発生すると,図11に太線により信号の発生の様子を示すように,シングルポートRAM2からは読出データc1が出力され(図12のj),シングルポートRAM1からは読出データb1が出力される(同i)。この時,フラグ処理部3からはアドレスa1のフラグとして“0”が出力される(図12のl)ので,第2の読出データ選択部4−2ではシングルポートRAM1から読出したデータb1(最新の書込データ)が選択されて出力される。   Thereafter, when a read access to the address a1 (f, g in FIG. 12) occurs at the input port A2 at the timing of the time T3 of the second clock 33M, as shown in FIG. The read data c1 is output from the single port RAM 2 (j in FIG. 12), and the read data b1 is output from the single port RAM 1 (same as i). At this time, since the flag processing unit 3 outputs “0” as the flag of the address a1 (l in FIG. 12), the second read data selection unit 4-2 reads the data b1 read from the single port RAM1 (latest Write data) is selected and output.

図13は実施例1における同時読出アクセスの場合の説明図,図13において,1−1,1−2,2−1,2−2,3及び4−1,4−2の各符号は上記図3に示す同一符号と同じである。図14は図13の信号発生のタイムチャートであり,ポート1(66M) のa〜gは第1のシングルポートRAM1に関する信号であり,ポート2(33M) のh〜oは第2のシングルポートRAM2に関する信号である。   FIG. 13 is an explanatory diagram in the case of simultaneous read access in the first embodiment. In FIG. 13, the symbols 1-1, 1-2, 2-1, 2-2, 3 and 4-1, 4-2 are the above The same reference numerals as those shown in FIG. FIG. 14 is a time chart of signal generation of FIG. 13, wherein a to g of the port 1 (66M) are signals relating to the first single port RAM1, and h to o of the port 2 (33M) are the second single port. This is a signal related to the RAM 2.

図14に示すタイムチャートでは,最初に第2クロック33M(図14のh)の時間T1に入力ポートA2へ書込み(write) のアクセスが発生してアドレスa1にデータc1が書込まれ,このアドレスa1のフラグが“1”にセットされる(図14のi,j,k,o)。一方,シングルポートRAM1では第1クロック66M(図14のa)のt1のタイミング(上記T1より後の時間)でアドレスa1にデータb1が書込まれ,アドレスa1のフラグが“0”にリセットされる(図14のb,c,d,o)。   In the time chart shown in FIG. 14, the write access to the input port A2 occurs first at time T1 of the second clock 33M (h in FIG. 14), and the data c1 is written to the address a1, and this address The flag of a1 is set to “1” (i, j, k, o in FIG. 14). On the other hand, in the single port RAM1, the data b1 is written to the address a1 at the timing t1 of the first clock 66M (a in FIG. 14) (the time after T1), and the flag of the address a1 is reset to “0”. (B, c, d, o in FIG. 14).

この後,第1クロック66Mの時間t3と第2クロック33Mの時間T3のタイミングでアドレスa1への読出アクセス(図14のb,c及びi,j)が,それぞれ入力ポートA1と入力ポートA2に発生すると,図13に太線で信号の発生の様子を示すように,シングルポートRAM1とシングルポートRAM2から読出データがそれぞれ2つの端子A,Bから出力される。シングルポートRAM1の読出端子Aからは66Mに同期してデータb1(図14のe)が出力され,シングルポートRAM2の端子Bからは66Mに同期してデータc1(同f)が出力されて,2つの読出データは第1の読出データ選択部4−1に入力する。また,シングルポートRAM2の読出端子Aからは33Mに同期してデータc1(図14のm)が出力され,シングルポートRAM1の端子Bからは33Mに同期してデータb1(同l)が出力されて,2つの読出データは第2の読出データ選択部4−2に入力する。読出データ選択部4−1,4−2はフラグ処理部3からアドレスa1のフラグ(“0”)により選択を行うことで,それぞれデータb1を選択して出力する(図14のg,n)。このように,2つの読出ポートからの同じアドレスへの同時の読出しでも,最新の書込データが読出される。   Thereafter, read access to the address a1 (b, c and i, j in FIG. 14) is made to the input port A1 and the input port A2, respectively, at the timing t3 of the first clock 66M and the time T3 of the second clock 33M. When generated, read data is output from the two terminals A and B from the single port RAM 1 and the single port RAM 2, respectively, as shown in FIG. Data b1 (e in FIG. 14) is output from the read terminal A of the single port RAM1 in synchronization with 66M, and data c1 (same as f) is output from the terminal B of the single port RAM2 in synchronization with 66M. The two read data are input to the first read data selection unit 4-1. Further, data c1 (m in FIG. 14) is output from the read terminal A of the single port RAM2 in synchronization with 33M, and data b1 (the same l) is output from the terminal B of the single port RAM1 in synchronization with 33M. Thus, the two read data are input to the second read data selection unit 4-2. The read data selection units 4-1 and 4-2 select and output the data b1 from the flag processing unit 3 based on the flag ("0") of the address a1 (g and n in FIG. 14). . As described above, the latest write data is also read by simultaneous reading from the two read ports to the same address.

図15は実施例2の構成を示す。この実施例2は上記図2に示す本発明の第2の原理構成に対応する。図中,5は多重部,50a〜50cはカウンタであり,50aは第2の入力ポートへの33Mに同期した書込要求(Write Request)が発生している時の33Mのクロックを1/2に分周するポート2用1/2カウンタ(CTR),50bは第1の入力ポートへの66Mに同期した書込要求(Write Request)が発生している時の66Mのクロックを1/2に分周するポート1用1/2カウンタ(CTR),50cは多重部5における多重化のためのMUX用クロック(528Mとする)を3分周するMUX用1/3カウンタ(CTR),51はポート2用書込アドレスと書込データを保持するポート2用書込アドレス/データシフトレジスタ,52aはポート1用1/2カウンタ50bの値が0であることを検出する0検出部,52bはポート1用1/2カウンタ50bの値が1であることを検出する1検出部,53aは66Mに同期したポート1の書込アドレスと書込データを0検出部52aの出力により保持するポート1用0面レジスタ(Reg),53bはポート1の書込アドレスと書込データを1検出部52bの出力により保持するポート1用1面レジスタ(Reg),54aはポート2用1/2カウンタ50aの立ち上りと立ち下りを検出するポート2・1/2カウンタ(CTR)エッジ検出部,54b,54cはそれぞれポート1用1/2カウンタ50の立ち上りを検出するポート1・1/2カウンタ(CTR)立ち上り検出部,ポート1・1/2カウンタ立ち下り検出部,55a,55b,55cはMUX用1/3カウンタ(CTR)50cの2,0,1の状態を検出する2検出部,0検出部,1検出部である。   FIG. 15 shows the configuration of the second embodiment. The second embodiment corresponds to the second principle configuration of the present invention shown in FIG. In the figure, 5 is a multiplexing unit, 50a to 50c are counters, and 50a is a clock of 33M when a write request synchronized with 33M to the second input port is generated. Port 2 1/2 counter (CTR), 50b halves the 66M clock when a write request synchronized with 66M to the first input port is generated A 1/2 counter for port 1 (CTR) for frequency division, 50c is a 1/3 counter for CUX (CTR) for dividing MUX clock (528M) for multiplexing in the multiplexing unit 5 by 3, and 51 The port 2 write address / data shift register holding the write address for port 2 and write data, 52a is a 0 detector for detecting that the value of the 1/2 counter for port 1 is 0, 52b is 1/2 for port 1 A 1-detection unit 53a for detecting that the value of the counter 50b is 1, and a 0-plane register for port 1 (Reg that holds the write address and write data of port 1 synchronized with 66M by the output of the 0-detection unit 52a) ), 53b holds the port 1 write address and write data by the output of the 1 detector 52b, and the port 1 single register (Reg), 54a rises and falls the port 2 1/2 counter 50a. Port 2/1/2 counter (CTR) edge detection unit 54b, 54c for detecting a port 1/1/2 counter (CTR) rising detection unit for detecting the rising of port 1/2 counter 50, port 1 -1/2 counter falling detection unit, 55a, 55b, 55c are 2 detection units for detecting 2, 0, 1 state of MUX 1/3 counter (CTR) 50c, 0 detection , It is the first detection unit.

56aはポート2(33M) 書込要求信号(Write Request)についてポート2用1/2カウンタ(CTR)50aの出力を受けてポート2・1/2カウンタエッジ検出部54aの出力でセットされて,2検出部55aの出力でリセットされる書込要求信号FF(フリップフロップ),56bはポート1(66M) 書込要求信号(Write Request) についてポート1用1/2カウンタ(CTR)50bの出力を受けてポート1・1/2カウンタ立ち上り検出部54bの出力でセットされて0検出部55bのタイミングでリセットされる0面書込要求信号FF(フリップフロップ),56cはポート1・1/2カウンタ(CTR)立ち下り検出部54cの出力でセットされて1検出部55cのタイミングでリセットされる1面書込要求信号FF(フリップフロップ)である。57a〜57eはオア回路,58a〜58fはアンド回路,59は前段の組み合わせ回路(アンド回路及びオア回路)で発生するヒゲ(余分な波形)をとるためのFF(フリップフロップ)である。6−1,6−2は1W1R(1ライトポート1リードポート)の第1のシングルポートRAM1(図ではRAM1と表示)と第2のシングルポートRAM2(図ではRAM2と表示)である。   56a receives the output of the port 2 1/2 counter (CTR) 50a for the port 2 (33M) write request signal (Write Request) and is set by the output of the port 2 1/2 counter edge detector 54a. 2 The write request signal FF (flip-flop) 56b reset by the output of the detection unit 55a is the output of the port 1 1/2 counter (CTR) 50b for the port 1 (66M) write request signal (Write Request). In response to this, the 0-plane write request signal FF (flip-flop) 56c is set at the output of the port 1/1/2 counter rising edge detection unit 54b and reset at the timing of the 0 detection unit 55b. (CTR) A one-side write request signal FF (flip-flop) that is set at the output of the falling detection unit 54c and reset at the timing of the one detection unit 55c.57a to 57e are OR circuits, 58a to 58f are AND circuits, and 59 is an FF (flip-flop) for taking a beard (extra waveform) generated in the preceding combinational circuit (AND circuit and OR circuit). Reference numerals 6-1 and 6-2 denote a first single-port RAM 1 (indicated as RAM 1 in the figure) and a second single-port RAM 2 (indicated as RAM 2 in the figure) of 1W1R (one write port and one read port).

また,多重部5の入力側のA20はポート2(33M)の書込アドレス(ADD) と書込データ(WDT)の入力端子,A10はポート1(66M)の書込アドレス(ADD) と書込データ(WDT)の入力端子,A21はポート2(33M)の書込要求(Write Request)の入力端子,A11はポート1(66M)の書込要求(Write Request)の入力端子,A30はMUX用クロック(Clock)である。また,シングルポートRAM1のA13は読出要求端子(Add,read request),R1は読出データ(read dt)端子であり,シングルポートRAM2のA23は読出要求端子(Add,read request),R2は読出データ(read dt)端子である。   A20 on the input side of the multiplexer 5 is an input terminal for the write address (ADD) and write data (WDT) of port 2 (33M), and A10 is a write address (ADD) of port 1 (66M). Input terminal for write data (WDT), A21 is an input terminal for write request of port 2 (33M), A11 is an input terminal for write request of port 1 (66M), and A30 is MUX Clock. A13 of the single port RAM1 is a read request terminal (Add, read request), R1 is a read data (read dt) terminal, A23 of the single port RAM2 is a read request terminal (Add, read request), and R2 is a read data. (Read dt) terminal.

図16は実施例2における33M書込アクセスのタイムチャートであり,図15におけるポート2(33M)への書込みを行う場合であり,ポート2用の33Mのクロック(図16のa)に対して,端子A20から書込アドレス/書込データがクロック周期のt1に「r1」(r1はアドレスと書込データを含む)が発生し,次の周期のt2に「r2」(r2は上記r1と異なるアドレスと書込データを含む)が発生し(図16のb),ポート2用書込アドレス/書込データシフトレジスタ51に格納され,順にシフトして出力される(同e)。この時,入力端子A21からはポート2の書込要求(Write Request)が出力され(図16のc),この時ポート2用1/2CTR50aにおいて33Mクロックを分周して0面と1面の状態を交互に発生し(図16のd),ポート2・1/2カウンタエッジ検出部FF(フリップフロップ)54aに入力するとエッジ検出出力が図16のgのように出力される。このgの出力と,gの信号によりセットされ,MUX用クロック(図16のf)をMUX用1/3カウンタ50cで3分周した出力(図16のi)の中から2検出部55aにおいて「2」の検出出力によりリセットされる書込要求信号FF56aの出力とが,オア回路57aに入力される。オア回路57aの出力はアンド回路58aでMUX用1/3カウンタ50cの1検出部55dの出力とアンド論理が取られてFF59にセットされ,ポート2用書込アドレス/書込データシフトレジスタ51の出力はアンド回路58dを通ってオア回路57dを通ってFF59にセットされて,シングルポートRAM1,2のライトアドレス・書込データ(図16のj)及びライトイネーブル信号(同k)がシングルポートRAM1とシングルポートRAM2に供給されて書込みが行われる。   FIG. 16 is a time chart of 33M write access in the second embodiment, in which writing to port 2 (33M) in FIG. 15 is performed, with respect to the 33M clock for port 2 (a in FIG. 16). , The write address / write data from terminal A20 is “r1” (r1 includes address and write data) at t1 of the clock cycle, and “r2” (r2 is r1 and r1 at the next cycle t2). (Including different addresses and write data) are generated (b in FIG. 16), stored in the port 2 write address / write data shift register 51, and shifted in order (output e). At this time, the port 2 write request (Write Request) is output from the input terminal A21 (c in FIG. 16). At this time, the port 2 1/2 CTR 50a divides the 33M clock to divide the 0 and 1 planes. When the states are alternately generated (d in FIG. 16) and input to the port 2 1/2 counter edge detection unit FF (flip-flop) 54a, an edge detection output is output as shown in g in FIG. From the output of g and the signal of g, the MUX clock (f in FIG. 16) is divided by 3 by the MUX 1/3 counter 50c (i in FIG. 16), and the 2 detector 55a The output of the write request signal FF 56a reset by the detection output of “2” is input to the OR circuit 57a. The output of the OR circuit 57a is ANDed with the output of the 1 detector 55d of the MUX 1/3 counter 50c by the AND circuit 58a and set in the FF 59, and the port 2 write address / write data shift register 51 The output is set in the FF 59 through the AND circuit 58d and the OR circuit 57d, and the write address / write data (j in FIG. 16) and the write enable signal (k in FIG. 16) of the single port RAMs 1 and 2 are supplied to the single port RAM1. Are supplied to the single port RAM 2 for writing.

図17は実施例2における66M書込アクセスのタイムチャートであり,図15におけるポート1(66M)への書込みを行う場合である。ポート1用の66Mのクロック(図17のa)に同期して,入力端子A10からクロック周期のt1〜t4に書込アドレス/書込みデータがs1〜s4(それぞれ書込アドレスと書込データを含む)として示すように発生する(同b)。この時,ポート1書込要求が図15の端子A11から発生し,これに対し66Mのクロックをポート1用1/2カウンタ50bで2分周する(図17のd)。このポート1用1/2カウンタ50bの0,1のカウント値に対して,0検出部52aと1検出部52bの各検出出力により,ポート1用0面レジスタ53aとポート1用1面レジスタ53bに端子A10からの書込アドレスと書込データを交互に,図17のe,fに示すように保持されて,順にシフトして出力される。すなわち,s1とs3の各書込アドレス/書込データがそれぞれ0面レジスタから66Mの2クロック長だけ発生し,s2,s4の各書込アドレス/書込データが1面レジスタから,s1とs3と1クロック分だけ位相をずらして発生する。   FIG. 17 is a time chart of 66M write access in the second embodiment, and shows a case of writing to port 1 (66M) in FIG. In synchronization with the 66M clock for port 1 (a in FIG. 17), write addresses / write data s1 to s4 (including write address and write data, respectively) from input terminal A10 to clock cycles t1 to t4 ) As shown in FIG. At this time, a port 1 write request is generated from the terminal A11 of FIG. 15, and the 66M clock is divided by 2 by the port 1 1/2 counter 50b (d in FIG. 17). With respect to the 0 and 1 count values of the 1/2 counter for port 1 50b, the 0-plane register 53a for port 1 and the 1-plane register 53b for port 1 are detected by the detection outputs of the 0 detector 52a and 1 detector 52b. The write address and the write data from the terminal A10 are alternately held as shown by e and f in FIG. That is, each write address / write data of s1 and s3 is generated from the 0-plane register by a length of 66 M, and each write address / write data of s2 and s4 is generated from the 1-plane register, and s1 and s3 Are generated by shifting the phase by one clock.

ポート1用1/2カウンタ50bの出力(図17のd)の立ち上りが,ポート1・1/2カウンタ立ち上り検出部54bで図17のhのように検出され,立ち下りがポート1・1/2カウンタ立ち下り検出部54cで図17のiのように検出され,それぞれ0面書込要求信号FF56bと1面書込要求信号FF56cのセット信号として入力する。これらの各書込要求信号FF56b,FF56cは,MUX用クロック(図17のg)を入力して3分周するMUX用1/3カウンタ50cの状態(図17のl)が0,1の時に0検出部55b,1検出部55cから出力が発生し,0面書込要求信号FF56bと1面書込要求信号FF56cをリセットして,図17のj,kの信号が発生する。図17のhとjの信号の論理和(オア)をとった出力はアンド回路58bに供給され,MUX用1/3カウンタ50cの出力を受け取る2検出部55eによる2検出出力とのアンドをとってオア回路57eに出力され,FF59に設定されて,シングルポートRAM1とシングルポートRAM2に供給されて書込みが行われる(図17のmのs1,s3)。同様に,図17のiとkの信号のオアをとった出力はアンド回路58cに供給され,MUX用1/3カウンタ50cの出力を受けとる0検出部55fによる0検出出力とのアンドをとってオア回路57eに出力されてFF59に設定され,シングルポートRAM1とシングルポートRAM2に供給されて書込みが行われる(図17のmのs2,s4)。   The rising edge of the output of the port 1/2 counter 50b (d in FIG. 17) is detected by the port 1/1/2 counter rising detector 54b as shown in h of FIG. The 2-counter falling detection unit 54c detects the signal as indicated by i in FIG. 17 and inputs it as a set signal for the 0-plane write request signal FF56b and the 1-plane write request signal FF56c, respectively. These write request signals FF56b and FF56c are input when the MUX clock (g in FIG. 17) receives a MUX clock (g in FIG. 17) and the state of the MUX 1/3 counter 50c (l in FIG. 17) is 0 or 1. Outputs are generated from the 0 detection unit 55b and the 1 detection unit 55c, the 0 side write request signal FF56b and the 1 side write request signal FF56c are reset, and signals j and k in FIG. 17 are generated. The output of the logical sum (OR) of the signals h and j in FIG. 17 is supplied to the AND circuit 58b and ANDed with the two detection outputs by the two detection unit 55e that receives the output of the MUX 1/3 counter 50c. Are output to the OR circuit 57e, set in the FF 59, and supplied to the single port RAM 1 and the single port RAM 2 for writing (s1 and s3 in m in FIG. 17). Similarly, the ORed output of the i and k signals in FIG. 17 is supplied to the AND circuit 58c and ANDed with the 0 detection output by the 0 detection unit 55f that receives the output of the MUX 1/3 counter 50c. It is output to the OR circuit 57e, set in the FF 59, supplied to the single port RAM 1 and the single port RAM 2 and written (s2 and s4 in m in FIG. 17).

図18は実施例2における同時書込アクセスのタイムチャートであり,図15におけるポート1(66M)への書込みと,ポート2(33M) への書込みが同時に発生した場合である。   FIG. 18 is a time chart of the simultaneous write access in the second embodiment, where the write to the port 1 (66M) and the write to the port 2 (33M) in FIG. 15 occur simultaneously.

ポート2用の33Mのクロック(図18のa)に同期して,図15の端子A20からクロック周期のT1〜T3に書込アドレス/書込データがr1,r2として示すように発生する(同b)。この時,ポート2書込要求が図15の端子A21から発生する(図18のc)。一方,同じ時間にポート1用の66Mのクロック(図18のe)に同期して,図15の端子A10からクロック周期のt1〜t4に書込アドレス/書込データがs1〜s4として示すように発生し(同f),ポート1書込要求が図15の入力端子A11から発生する(同g)。この場合,上記図16,図17でも記載したのと同様に,ポート2の書込要求のアドレスとデータは,ポート2用書込アドレス/書込データシフトレジスタ51に設定されて順次シフトされ,ポート1の書込み要求のアドレスとデータはポート1用0面レジスタ53aとポート1用1面レジスタ53bに交互に設定されて順次シフトされ,各ポート毎の書込要求(図18のc,g)のエッジ検出を行い,MUX用1/3カウンタ50cによる分周出力(0,1,2のカウント値)による書込データの選択(図18のj)と書込み動作(同k)を行うことにより,書込みの競合は発生しない。また,読出アクセスについても,シングルポートRAM2への読出要求(図18のd)とシングルポートRAM1への読出要求(図18のh)は,それぞれが異なるポートで行われるので問題がなく,図18のl,mに示すようにデータが読み出される(シングルポートRAM1からs4,シングルポートRAM2からr2が読出される)。但し,同一アドレスの書込アクセスと読出アクセスが同時に行われないものとする。   In synchronization with the 33M clock for port 2 (a in FIG. 18), the write address / write data is generated as indicated by r1 and r2 from the terminal A20 in FIG. b). At this time, a port 2 write request is generated from the terminal A21 in FIG. 15 (c in FIG. 18). On the other hand, at the same time, in synchronization with the 66M clock for port 1 (e in FIG. 18), the write address / write data is indicated as s1 to s4 from the terminal A10 in FIG. (Portion f) and a port 1 write request is generated from the input terminal A11 of FIG. 15 (portion g). In this case, as described in FIGS. 16 and 17, the address and data of the port 2 write request are set in the port 2 write address / write data shift register 51 and sequentially shifted. The port 1 write request address and data are alternately set in the port 1 0 register 53a and port 1 register 53b and sequentially shifted, and each port write request (c, g in FIG. 18). Edge detection, write data selection (j in FIG. 18) and write operation (k in FIG. 18) by frequency division output (count values of 0, 1, and 2) by the MUX 1/3 counter 50c. , Write contention does not occur. As for the read access, there is no problem because the read request to the single port RAM 2 (d in FIG. 18) and the read request to the single port RAM 1 (h in FIG. 18) are performed at different ports. The data is read as indicated by 1 and m of (1 and s4 from the single port RAM1 and r2 from the single port RAM2). However, it is assumed that write access and read access of the same address are not performed simultaneously.

本発明の第1の原理構成を示す図である。It is a figure which shows the 1st principle structure of this invention. 本発明の第2の原理構成を示す図である。It is a figure which shows the 2nd principle structure of this invention. 実施例1の構成を示す図である。1 is a diagram illustrating a configuration of Example 1. FIG. 実施例1のフラグ処理部の構成例を示す図である。It is a figure which shows the structural example of the flag process part of Example 1. FIG. 第1の読出データ選択部の構成例を示す図である。It is a figure which shows the structural example of a 1st read data selection part. 第2の読出データ選択部の構成例を示す図である。It is a figure which shows the structural example of the 2nd read data selection part. 実施例1における同時書込アクセスの説明図である。It is explanatory drawing of the simultaneous write access in Example 1. FIG. 図7の信号発生のタイムチャートを示す図である。It is a figure which shows the time chart of the signal generation of FIG. 実施例1における66Mの入力ポートへの読出アクセスの説明図である。It is explanatory drawing of the read access to the input port of 66M in Example 1. FIG. 図9の信号発生のタイムチャートを示す図である。It is a figure which shows the time chart of the signal generation of FIG. 実施例1における33Mの入力ポートへの読出アクセスの説明図である。It is explanatory drawing of the read access to the input port of 33M in Example 1. FIG. 図11の信号発生のタイムチャートを示す図である。It is a figure which shows the time chart of the signal generation of FIG. 実施例1における同時読出アクセスの場合の説明図である。FIG. 6 is an explanatory diagram for simultaneous read access in the first embodiment. 図13の信号発生のタイムチャートを示す図である。It is a figure which shows the time chart of the signal generation of FIG. 実施例2の構成を示す図である。6 is a diagram illustrating a configuration of Example 2. FIG. 実施例2における33M書込アクセスのタイムチャートを示す図である。FIG. 10 is a time chart of 33M write access in the second embodiment. 実施例2における66M書込アクセスのタイムチャートを示す図である。It is a figure which shows the time chart of 66M write access in Example 2. FIG. 実施例2における同時書込アクセスのタイムチャートを示す図である。FIG. 10 is a diagram showing a time chart of simultaneous write access in the second embodiment. 従来例の構成を示す図である。It is a figure which shows the structure of a prior art example.

符号の説明Explanation of symbols

1−1 1W2Rの第1のシングルポートRAM
1−2 1W2Rの第2のシングルポートRAM
2−1 第1バスアドレスデコーダ
2−2 第2バスアドレスデコーダ
3 フラグ処理部
4−1 第1の読出データ選択部
4−2 第2の読出データ選択部
A1 第1クロックに同期する第1の入力ポート
A2 第2クロックに同期する第2の入力ポート
R1 第1クロックに同期する第1の読出ポート
R2 第2クロックに同期する第2の読出ポート
1-1 1W2R first single-port RAM
1-2 1W2R second single-port RAM
2-1 First Bus Address Decoder 2-2 Second Bus Address Decoder 3 Flag Processing Unit 4-1 First Read Data Selection Unit 4-2 Second Read Data Selection Unit A1 First synchronized with the first clock Input port A2 Second input port synchronized with the second clock R1 First read port synchronized with the first clock R2 Second read port synchronized with the second clock

Claims (5)

2つのシングルポートRAMを用いた擬似デュアルポートメモリ回路であって,
前記2つのシングルポートRAMは,同じアドレス空間を備え,一方のシングルポートRAMは第1のクロックに同期して書込みを行う書込ポートを備え,他方のシングルポートRAMは前記第の1クロックと異なる周波数の第2のクロックに同期して書込みを行う書込ポートを備え,
前記2つのシングルポートRAMの各アドレス毎に共通する1個のフラグを有するフラグ処理部を備え,
前記フラグ処理部は,前記シングルポートRAMの一方への書込み時に対応するフラグをセットし,前記シングルポートRAMの他方への書込み時に対応するフラグをリセットし,
前記各シングルポートRAMの一方への読出アクセスは,それぞれ自シングルポートRAMと他シングルポートRAMの読出ポートに供給され,2つのシングルポートRAMからの読出しデータから,前記読出アドレスに対応するフラグの状態に対応した一方を選択する手段を備えることを特徴とする擬似デュアルポートメモリ回路。
A pseudo dual port memory circuit using two single port RAMs,
The two single port RAMs have the same address space, one single port RAM has a write port for writing in synchronization with a first clock, and the other single port RAM is different from the first clock. A write port for writing in synchronization with the second clock of the frequency;
A flag processing unit having one common flag for each address of the two single-port RAMs;
The flag processing unit sets a flag corresponding to writing to one of the single port RAMs, resets a flag corresponding to writing to the other of the single port RAMs,
Read access to one of the single-port RAMs is supplied to the read port of its own single-port RAM and the other single-port RAM, and from the read data from the two single-port RAMs, the state of the flag corresponding to the read address A pseudo dual-port memory circuit comprising means for selecting one corresponding to the above.
請求項1において,
前記一方のシングルポートRAMへの読出要求は前記第1のクロックに同期する第1の読出ポートに供給されると共に,前記他方のシングルポートRAMの第1のクロックに同期する第2の読出ポートに供給され,
前記他方のシングルポートRAMへの読出要求は前記第2のクロックに同期する第1の読出ポートに供給されると共に,前記一方のシングルポートRAMの第2のクロックに同期する第2の読出ポートに供給され,
前記一方のシングルポートRAMの前記第1の読出ポートにより読出されたデータと,前記他方のシングルポートRAMの前記第2の読出ポートから読出されたデータを第1の読出しデータ選択部に入力し,
前記他方のシングルポートRAMの前記第1の読出ポートにより読出されたデータと,前記一方のシングルポートRAMの前記第2の読出ポートから読出されたデータを第2の読出しデータ選択部に入力し,
前記第1と第2の読出しデータ選択部は,それぞれ前記フラグの状態に応じて一方のデータを選択することを特徴とする擬似デュアルポートメモリ回路。
In claim 1,
A read request to the one single-port RAM is supplied to a first read port synchronized with the first clock, and to a second read port synchronized with the first clock of the other single-port RAM. Supplied,
A read request to the other single-port RAM is supplied to a first read port synchronized with the second clock, and also to a second read port synchronized with a second clock of the one single-port RAM. Supplied,
The data read by the first read port of the one single-port RAM and the data read from the second read port of the other single-port RAM are input to a first read data selection unit,
The data read by the first read port of the other single port RAM and the data read from the second read port of the one single port RAM are input to a second read data selection unit,
The pseudo dual-port memory circuit, wherein each of the first and second read data selection units selects one data in accordance with the state of the flag.
請求項1または2の何れかにおいて,
前記第1のクロックの周波数は前記第2のクロックの周波数と異周波数であることを特徴とする擬似デュアルポートメモリ回路。
In either claim 1 or 2,
The pseudo dual port memory circuit, wherein the frequency of the first clock is different from the frequency of the second clock.
2つのシングルポートRAMを用いた擬似デュアルポートメモリ回路であって,
前記2つのシングルポートRAMは,同じアドレス空間を備え,それぞれ第1のクロックまたは前記第1のクロックと異なる周波数の第2のクロックに同期して動作する一つの書込ポートを備え,一方のシングルポートRAMは第1のクロックに同期した読出ポートを備え,他方のシングルポートRAMは第2のクロックに同期した読出ポートを備え,
前記2つのシングルポートRAMの書込ポートの前段に第1のクロックに同期した書込アクセスと第2のクロックに同期した書込みアクセスが入力されると共に,前記第1のクロック及び第2のクロックの周波数より高い多重用クロックとが入力される多重部を備え,
前記多重部は,前記多重用クロックを分周するカウンタと,前記カウンタの分周出力により前記第1のクロックに同期した書込みアクセスと第2のクロックに同期した書込みアクセスを低い周波数の多数のアクセス出力に分割した書込みアクセスを前記各シングルポートRAMの書込ポートに入力することを特徴とする擬似デュアルポートメモリ回路。
A pseudo dual port memory circuit using two single port RAMs,
The two single-port RAMs have the same address space, and each has one write port that operates in synchronization with a first clock or a second clock having a frequency different from that of the first clock. The port RAM has a read port synchronized with the first clock, and the other single-port RAM has a read port synchronized with the second clock,
The write access synchronized with the first clock and the write access synchronized with the second clock are input to the preceding stage of the write port of the two single-port RAMs, and the first clock and the second clock It has a multiplexing unit that receives a clock for multiplexing higher than the frequency,
The multiplexing unit includes a counter that divides the clock for multiplexing, a write access synchronized with the first clock and a write access synchronized with the second clock by a divided output of the counter. A pseudo dual-port memory circuit, wherein a write access divided into outputs is input to a write port of each single-port RAM.
請求項4において,
前記第1のクロックの周波数を前記第2のクロックの周波数の整数倍とし,前記多重部の多重用クロックの周波数を前記第1のクロックの周波数より高い前記第2のクロックの周波数の整数倍とすることを特徴とする擬似デュアルポートメモリ回路。
In claim 4,
The frequency of the first clock is an integer multiple of the frequency of the second clock, and the frequency of the multiplexing clock of the multiplexing unit is an integer multiple of the frequency of the second clock higher than the frequency of the first clock. A pseudo dual port memory circuit characterized by:
JP2006311075A 2006-11-17 2006-11-17 Pseudo dual port memory circuit Withdrawn JP2008129671A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006311075A JP2008129671A (en) 2006-11-17 2006-11-17 Pseudo dual port memory circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006311075A JP2008129671A (en) 2006-11-17 2006-11-17 Pseudo dual port memory circuit

Publications (1)

Publication Number Publication Date
JP2008129671A true JP2008129671A (en) 2008-06-05

Family

ID=39555446

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006311075A Withdrawn JP2008129671A (en) 2006-11-17 2006-11-17 Pseudo dual port memory circuit

Country Status (1)

Country Link
JP (1) JP2008129671A (en)

Similar Documents

Publication Publication Date Title
USRE34850E (en) Digital signal processor
US7386689B2 (en) Method and apparatus for connecting a massively parallel processor array to a memory array in a bit serial manner
JP2007525766A (en) Collision detection in multiport memory systems
US6816955B1 (en) Logic for providing arbitration for synchronous dual-port memory
US10282343B2 (en) Semiconductor device
JP7138190B2 (en) Network switch queue
US7583706B2 (en) Method and apparatus for increasing packet throughput in crossbar
US11482264B2 (en) Memory module adapted to implementing computing functions
KR100498233B1 (en) First-in first-out memory circuit and method for executing the same
US7093084B1 (en) Memory implementations of shift registers
US20040172517A1 (en) Synchronous periodical orthogonal data converter
JP2008129671A (en) Pseudo dual port memory circuit
JP5499131B2 (en) Dual port memory and method thereof
JP6432348B2 (en) Arithmetic apparatus and arithmetic method
US6625711B1 (en) Method and/or architecture for implementing queue expansion in multiqueue devices
CN114661634A (en) Data caching device and method, integrated circuit chip, computing device and board card
US6483753B1 (en) Endianess independent memory interface
JP6493044B2 (en) Multiprocessor system
JP2006293538A (en) Calculation system
JP5126010B2 (en) Memory access control circuit and image processing apparatus
TWI442383B (en) Memory architecture for display device and control method thereof
JP3761962B2 (en) Time switch memory data control device
US20140250252A1 (en) First-in First-Out (FIFO) Modular Memory Structure
JP2009223482A (en) Data processing system
JPH11353289A (en) Parallel processing processor and parallel processing method

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20100202