FPGA控制模塊部分主要負(fù)責(zé)接收來自單片機(jī)的圖像數(shù)據(jù)D[5:0]和控制信號(hào)Hsys(行同步信號(hào))、Vsys(場(chǎng)同步信號(hào))和隨路傳輸?shù)妮敵鰣D像數(shù)據(jù)的時(shí)鐘信號(hào)CLK(50 MHz以下)。為了節(jié)省單片機(jī)內(nèi)部的時(shí)鐘資源和輸出口的數(shù)量,對(duì)于18 bit彩色顯示的LCM,F(xiàn)PGA連接單片機(jī)的圖像數(shù)據(jù)輸入口可設(shè)計(jì)為6 bit,再在FPGA內(nèi)部將接收到的數(shù)據(jù)串并轉(zhuǎn)換為18 bit數(shù)據(jù)輸出至液晶顯示模塊。因此在FPGA與單片機(jī)接口處,每個(gè)時(shí)鐘FPGA僅接收R、G、B三組顏色數(shù)據(jù)中的一組D[5:0],經(jīng)過FPGA的片內(nèi)RAM緩存滿480個(gè)D[5:0]以后再一次存儲(chǔ)到一行DDR SDRAM中,同時(shí)給出存儲(chǔ)單元的地址和各種控制信號(hào)。
硬件接口上,由于DDR SDRAM是高速器件,主要考慮與FPGA之間的互連。在布局布線時(shí)要求各數(shù)據(jù)線DQ和數(shù)據(jù)采樣線DQS嚴(yán)格等長(zhǎng),以及采用FPGA對(duì)DDR SDRAM的專用接口。
2 FPGA內(nèi)部模塊設(shè)計(jì)
高實(shí)時(shí)性是系統(tǒng)設(shè)計(jì)的基本要求。為統(tǒng)籌兼顧重要性各不相同的任務(wù),一般采用時(shí)序和電路結(jié)構(gòu)優(yōu)化[6],以及各模塊并行處理[7]實(shí)現(xiàn)。
本系統(tǒng)中,3個(gè)主要器件都需要FPGA控制,且控制信號(hào)較多,數(shù)據(jù)通路設(shè)計(jì)又需考慮到3個(gè)時(shí)鐘域的互相轉(zhuǎn)換和相互通信,較為復(fù)雜。設(shè)計(jì)采用了自頂向下的模塊化設(shè)計(jì)思路[8],將數(shù)據(jù)通路和數(shù)據(jù)控制通路分離,如圖2。單獨(dú)設(shè)計(jì)控制信號(hào)模塊,并輸入數(shù)據(jù)通路模塊以控制和處理數(shù)據(jù),使輸出的數(shù)據(jù)達(dá)到設(shè)計(jì)要求。
2.1 數(shù)據(jù)通路設(shè)計(jì)
數(shù)據(jù)通路由如圖3所示的模塊構(gòu)成。圖中未標(biāo)注的控制信號(hào)接口與控制信號(hào)模塊相連。
PLL(Phase Lock Loop):鎖相環(huán)是FPGA內(nèi)部底層資源,此處將輸入的50 MHz的時(shí)鐘通過倍頻、移相等得到系統(tǒng)所需的System clk(100 MHz,相位偏移0°)、Write clk(100 MHz,相位偏移-90°)和LCM clk(33 MHz,相位偏移0°)。
DQS:DQS信號(hào)控制模塊,控制與DDR SDRAM的DQS引腳相連的DQS引腳,雙向接口在使能信號(hào)oe的控制下產(chǎn)生或接收DQS信號(hào),并將接收到的DQS信號(hào)移相90°以后作為FPGA內(nèi)部對(duì)DQ數(shù)據(jù)組的采樣信號(hào)。
BUFFER IN:輸入緩存模塊,在外部時(shí)鐘和外部控制信號(hào)的作用下接收數(shù)據(jù)并緩存到片內(nèi)RAM,每滿480個(gè)數(shù)據(jù)發(fā)出一次Ready信號(hào),表示緩存中已存滿可占用一行DDR SDRAM存儲(chǔ)單元的數(shù)據(jù)。[!--empirenews.page--]
DQ:DQ數(shù)據(jù)控制模塊,控制與DDR SDRAM的DQ引腳組相連的DQ引腳組,雙向接口,在使能信號(hào)oe的控制下輸出或接收DQ組數(shù)據(jù)。輸出數(shù)據(jù)時(shí)使用Write clock,輸入數(shù)據(jù)時(shí)使用DQS模塊產(chǎn)生的dqs read信號(hào)對(duì)輸入數(shù)據(jù)采樣,并將結(jié)果輸出到下級(jí)模塊。
BUFFER OUT:輸出緩存模塊,緩存來自DDR SDRAM的數(shù)據(jù),并在控制信號(hào)的控制下按LCM時(shí)序輸出彩色圖像數(shù)據(jù)。
2.2 控制模塊設(shè)計(jì)
頂層控制信號(hào)模塊由CONTROL模塊和LCM DRIVEN模塊兩部分構(gòu)成,如圖4所示。主要負(fù)責(zé)各模塊之間的通信,產(chǎn)生控制信號(hào)控制數(shù)據(jù)的流向,向各器件輸出控制信號(hào)等。
CONTROL:控制模塊,為DDR SDRAM分配讀、寫時(shí)間:以200 MHz的數(shù)據(jù)率在讀時(shí)間段讀出5行DDR SDRAM中的數(shù)據(jù),緩存到BUFFER OUT,再以33 MHz的速度讀出并輸出到LCM;在寫時(shí)間段探測(cè)數(shù)據(jù)通路中的BUFFER IN中的數(shù)據(jù)是否緩存完成,若完成則產(chǎn)生信號(hào)開始對(duì)DDR SDRAM寫入數(shù)據(jù)。在DDR SDRAM的讀寫過程中根據(jù)需要產(chǎn)生DDR SDRAM控制信號(hào)、讀寫行列地址信號(hào),為驅(qū)動(dòng)LCM產(chǎn)生控制信號(hào):行、場(chǎng)同步信號(hào)(Hsys LCM、Vsys LCM),數(shù)據(jù)有效信號(hào)(DE LCM)。
LCM DRIVEN:LCM驅(qū)動(dòng)模塊,輸入LCM的控制信號(hào),產(chǎn)生LCM驅(qū)動(dòng)所需的各種控制信號(hào),并輸出到FPGA的I/O,結(jié)合外圍電路,驅(qū)動(dòng)LCD。
3 實(shí)現(xiàn)結(jié)果
數(shù)據(jù)接口利用Altera公司專用SignalTapⅡ邏輯分析儀驗(yàn)證。圖5、圖6是用邏輯分析儀截取的芯片運(yùn)行時(shí)在各引腳或邏輯單元處的實(shí)時(shí)波形圖。圖5表示數(shù)據(jù)輸入FPGA直到進(jìn)入DDR SDRAM的數(shù)據(jù)通路部分。數(shù)據(jù)輸入經(jīng)緩沖模塊后按照進(jìn)入FPGA的順序,分奇偶兩路(Qj、Qo)進(jìn)入DQ接口模塊,并合并成一路雙倍速經(jīng)DQ端口輸出FPGA。該過程同時(shí)輸出CAS、RAS、WE等命令信號(hào)和地址信號(hào)(ADDR)。由于設(shè)定了邏輯分析儀以系統(tǒng)時(shí)鐘100 MHz速率采樣各信號(hào),因此對(duì)于數(shù)據(jù)率是200 MHz的DQ雙向口,該采樣信號(hào)只能間隔一個(gè)數(shù)據(jù)采樣一次,而不能完全反映出DQ輸出口的數(shù)據(jù)率。
圖6表示數(shù)據(jù)讀出DDR SDRAM進(jìn)入FPGA經(jīng)緩沖輸出FPGA的數(shù)據(jù)通路部分。DDR SDRAM在CAS、RAS、WE等命令信號(hào)和地址信號(hào)(ADDR)控制下,將對(duì)應(yīng)地址存儲(chǔ)單元的數(shù)據(jù)以200 MHz的雙倍數(shù)據(jù)率經(jīng)DQ雙向I/O口輸入FPGA,并經(jīng)DQ接口模塊轉(zhuǎn)換為100 MHz的單倍數(shù)據(jù)率,分兩路輸出(inst9、inst10)。經(jīng)輸出緩沖模塊緩存后,再轉(zhuǎn)換為L(zhǎng)CM模塊所需的時(shí)鐘頻率33.33 MHz,并行輸出FPGA。類似的,由于邏輯分析儀以系統(tǒng)時(shí)鐘100 MHz速率采樣,DQ輸入口的數(shù)據(jù)率在圖中不能完全反映出來。
至此,數(shù)據(jù)經(jīng)過了設(shè)計(jì)中所有為其設(shè)置的模塊和接口,包括輸入接口、輸入緩沖模塊、DQ/DQS接口、輸出緩沖模塊和輸出接口。
設(shè)計(jì)ARM輸出數(shù)據(jù)時(shí)鐘是0.3 MHz,隨著數(shù)據(jù)逐漸經(jīng)片內(nèi)輸入緩存輸入DDR SDRAM替換掉原有數(shù)據(jù),對(duì)應(yīng)在屏上的圖像也逐漸被替換,該驗(yàn)證過程說明DDR SDRAM在過程中起到了幀存儲(chǔ)器的作用,設(shè)計(jì)的系統(tǒng)與預(yù)期要求相符。
該顯卡系統(tǒng)以單片DDR SDRAM為顯示存儲(chǔ)器存儲(chǔ)圖像數(shù)據(jù),以FPGA為控制中心,嵌入式系統(tǒng)僅需通過I/O口在需改變圖像時(shí)輸出一幀數(shù)據(jù)至顯卡,不需實(shí)時(shí)提供數(shù)據(jù)流和各種顯示器控制信號(hào),從而使嵌入式微處理器有足夠的時(shí)間控制其所在的自動(dòng)化系統(tǒng)。
設(shè)計(jì)采用800×480分辨率液晶顯示器為圖像輸出設(shè)備,具有面向微處理器的通用接口,可匹配數(shù)據(jù)輸出時(shí)鐘頻率50 MHz以下的微處理器。由于系統(tǒng)圖像數(shù)據(jù)來自單片機(jī),因此分立的系統(tǒng)沒有數(shù)據(jù)來源,為了驗(yàn)證設(shè)計(jì)的正確性,驗(yàn)證步驟里采用了周立功單片機(jī)有限公司的EasyARM2131開發(fā)板驗(yàn)證設(shè)計(jì)結(jié)果。驗(yàn)證結(jié)果表明,設(shè)計(jì)達(dá)到了預(yù)期要求。
北京2022年10月18日 /美通社/ -- 10月14日,國(guó)際數(shù)據(jù)公司(IDC)發(fā)布《2022Q2中國(guó)軟件定義存儲(chǔ)及超融合市場(chǎng)研究報(bào)告》,報(bào)告顯示:2022年上半年浪潮超融合銷售額同比增長(zhǎng)59.4%,近5倍于...
關(guān)鍵字: IDC BSP 數(shù)字化 數(shù)據(jù)中心東京2022年10月18日 /美通社/ -- NIPPON EXPRESS HOLDINGS株式會(huì)社(NIPPON EXPRESS HOLDINGS, INC.)旗下集團(tuán)公司上海通運(yùn)國(guó)際物流有限公司(Nipp...
關(guān)鍵字: 溫控 精密儀器 半導(dǎo)體制造 BSPLua RTOS 是一個(gè)實(shí)時(shí)操作系統(tǒng),設(shè)計(jì)在嵌入式系統(tǒng)上運(yùn)行,對(duì) FLASH 和 RAM 內(nèi)存的要求最低。目前 Lua RTOS 可用于 ESP32, ESP8266 和 PIC32MZ 平臺(tái),并可以輕松移植到其他32位...
關(guān)鍵字: Lua RTOS 操作系統(tǒng) 嵌入式系統(tǒng)