Chip123 科技應用創新平台

標題: 如何在RAM裡搜尋資料 [打印本頁]

作者: topplaza    時間: 2008-4-27 07:45 PM
標題: 如何在RAM裡搜尋資料
小弟使用verilog寫一個檔案要將1000個資料輸入到RAM裡,現在要找RAM裡的二筆資料為71(第I筆),第I+188筆資料也為71,
) u! \0 A7 W6 g5 G( K4 V9 E如果找到就開始輸出RAM裡的資料,現在問題來了7 n* W, u8 E+ V) c" |
我要下什麼語法,才有法子去搜尋RAM裡的資料?
作者: winslow    時間: 2008-4-28 08:31 AM
你應該可以用比較器與計數器來達成這樣子的功能。
作者: michael6172    時間: 2008-4-28 09:34 AM
你的想法好像要把verilog當C來寫耶,二樓大大的方法可以用用看,不過要花蠻多時間去搜尋^^
作者: topplaza    時間: 2008-4-28 10:15 AM
原帖由 michael6172 於 2008-4-28 09:34 AM 發表
+ Z. W8 _: F' M* {* b8 r你的想法好像要把verilog當C來寫耶,二樓大大的方法可以用用看,不過要花蠻多時間去搜尋^^

% W- J& [" `+ j/ K. A+ v, K
! w6 m! j& b& w4 L6 P0 ?/ y我的想法是ram先存1000筆資料,然後開始找第1筆跟第189筆資料看是不是71,如果是ram就輸出,如果不是第1筆資料丟掉,將最新資料放進第1筆資料的位址3 ~  P% x% j6 V5 b/ x' Q
接下來,找第2筆與第190筆,看是不是71,如果是RAM輸出,如果不是最新資料放進第2筆的位置,依此類推5 M) f; y2 Z3 N9 S  U! |$ z9 ~/ V
以上動作是1個clk做一次動作.5 L) m3 `, @/ [8 \& o& ]& y: x
所以我想問說,有什麼方法可以比對RAM裡面的值
作者: addn    時間: 2008-4-28 11:22 AM
您好( B+ L2 f7 O& k/ E
依你的需求,想要做到1個clk做一次動作,
4 M7 w7 D( j! ?; ^似忽不容易
, W* N& L6 g+ V
: z, P) p2 ]9 L/ E由於你的資料蠻多筆的,不然可以試試關聯記憶體架構
作者: topplaza    時間: 2008-4-28 01:44 PM
原帖由 addn 於 2008-4-28 11:22 AM 發表 7 D$ |1 T& L& {4 d1 j) Y
您好
1 q3 |1 l* x# K  }/ T6 n. Y. @" c依你的需求,想要做到1個clk做一次動作,
2 q" I+ a0 b4 H" n. I似忽不容易
7 |1 E. ^+ [9 N3 t4 [: u+ }% o8 J
由於你的資料蠻多筆的,不然可以試試關聯記憶體架構

  q, y2 `3 f( j. S; j# K+ N6 d8 y
1個clk做一次動作的方式,我是指,每次只做一個資料的比對,所以在1000筆資料裡,找到第i筆與第i+188筆資料為71的最差時間為812個clk
作者: kevin    時間: 2008-4-28 08:47 PM
如果用在FPGA design的話,可採用CAM(Content Addressable Memories)來比對data(即=71),CAM 做input data(=71) 的 search,當match時,則輸出match的address.速度很快./ J' U7 V! Q6 |/ h
+ ~: F4 r4 }% W
[attach]3766[/attach]
) k2 m9 F; _' f2 x8 m7 ?) m; F# W: q3 X, o# o, Q" a
再配合一些control logic即可達到目的.
作者: topplaza    時間: 2008-4-29 08:33 AM
原帖由 kevin 於 2008-4-28 08:47 PM 發表 3 G% P  o/ Y. \5 i; u) @7 T) W
如果用在FPGA design的話,可採用CAM(Content Addressable Memories)來比對data(即=71),CAM 做input data(=71) 的 search,當match時,則輸出match的address.速度很快.( n3 z# J9 e0 D' O! P" G
. m( o5 G! ]# v$ f/ u( j6 J7 q
3766
* M# S$ L! p# n9 |+ k; M8 [# p3 p, l% g! [7 f# _) T5 E: X+ d
再配合一些control logic即可達到目的 ...
1 q* j& w& M0 K' c# Q. Z  ~4 N
) |9 l: c. E7 A3 {, f
殘念,我是使用@ltera cyc1one 系列的板子,無法使用CAM,不過謝謝大大的幫忙.




歡迎光臨 Chip123 科技應用創新平台 (http://chip123.com/) Powered by Discuz! X3.2