以文本方式查看主題 - 曙海教育集團論壇 (http://www.hufushizhe.com/bbs/index.asp) -- ARM技術討論專區 (http://www.hufushizhe.com/bbs/list.asp?boardid=14) ---- [轉帖]利用庫函數構造雙端口RAM (http://www.hufushizhe.com/bbs/dispbbs.asp?boardid=14&id=1268) |
-- 作者:wangxinxin -- 發布時間:2010-11-12 11:49:33 -- [轉帖]利用庫函數構造雙端口RAM 在MAX+PLUSⅡ中有幾個功能單元描述庫。prim邏輯元庫,包括基本邏輯單元電路,如與、或、非門,觸發器、輸入、輸出引腳等;mf宏功能庫,包括TTL數字邏輯單元如74系列芯片;而下文將要詳細介紹的參數化雙端口RAM模塊所在的參數化模塊庫(mega-lpm)中,包括各種參數化運算模塊(加、減、乘、除)、參數化存儲模塊(單、雙端口RAM、ROM、FIFO等)以及參數化計數器、比較器模塊等等。庫中的這些元件功能邏輯描述經過了優化驗證,是數字電路設計中的極好選擇。 mega-lpm庫中共有五種參數化雙端口RAM模塊:ALTDPRAM、LPM_RAM_DP、CSDPRAM、LPM_RAM_DQ和LPM_RAM_IO。其中ALTDPRAM和LPM_RAM_DP模塊讀寫有兩套總線,讀和寫有各自的時鐘線、地址總線、數據總線和使能端,可同時進行讀寫操作。除此之外,ALTDPRAM模塊還有一個全局清零端口。CSDPRAM模塊則有a、b兩組寫端時鐘線、地址總線、數據總線和使能端,可同時對RAM進行寫操作,但對RAM讀、寫只能分時進行。LPM_RAM_DQ模塊相對簡單,讀與寫共用一組地址總線,有各自的數據線和時鐘線。LPM_RAM_IO模塊只有一組地址總線和數據總線。 mega-1pm函數庫中的雙端口RAM模塊全是參數化調用,這為設計帶來極大的方便。通過對各種參數的取舍、參數設置和組合,再結合讀寫控制邏輯就可以構造出設計需要的存儲器模塊。雙端口RAM常見的應用模式主要有以下兩種: 1.存儲器映像方式。該方式可以隨意對存儲器的任何單元進行讀寫操作。其主要應用于多CPU的共享數據存儲、數據傳送等。該方式中,讀、寫控制線、地址總線和數據總線有兩套。根據兩端口之間數據的傳送方向為單向或雙向,又有單向數據總線和雙向數據總線之分。 2.順序寫方式。該方式對RAM的寫操作只能順序寫入。這種情況適用于對象特性與時間緊密相關或傳送數據與順序密切相關的場合,如文件傳送、時序過程、波形分析等。根據寫控制邏輯的不同,可對RAM進行循環寫入或一次寫入方式。該方式下的讀操作可以是存儲器映像讀或順序讀,前一種有較大的靈活性,而后一種則類似于FIFO形式。 在讀、寫使用獨立的地址總線和數據總線時,可以同時對RAM不同單元進行讀寫操作。根據不同控制邏輯的要求,對讀寫時鐘、時鐘使能端口可以適時設置,以滿足控制需要。 |