基于CPLD技術(shù)的數(shù)字時序控制電路設(shè)計
由32MHz高精度晶體振蕩器提供精確的時鐘信號。MAX II芯片EPM570T100C5產(chǎn)生精確的時序控制信號。EPM570是世界一流的低成本器件,適用于實現(xiàn)任何數(shù)字控制功能。該芯片采用非易失單芯片解決方案,可解決處理器I/O引腳不夠用等板級問題,管理上電排序,配置其它更復(fù)雜的器件,或者低成本實現(xiàn)不兼容接口(“膠合邏輯”)的轉(zhuǎn)換。具有低成本、零功耗、小封裝、瞬間啟動以及非易失性、系統(tǒng)內(nèi)可編程能力(ISP)等優(yōu)點。CD4053根據(jù)CPLD芯片提供的精確時序數(shù)字控制信號完成正弦信號的時分制激勵。本文引用地址:http://cafeforensic.com/article/163806.htm
4、軟件設(shè)計[5]
在CPLD開發(fā)的過程中,使用的是Altera公司提供的CPLD開發(fā)軟件QuartusⅡ,該軟件支持Altera公司的絕大部分器件。為了縮短設(shè)計周期和降低設(shè)計復(fù)雜度,QuartuslI包含了工作組計算、集成邏輯分析功能、EDA工具集成、多工程支持、增強重編譯和IP集成等功能。在設(shè)計過程中采用的是自頂?shù)降椎脑O(shè)計思想,頂層基于功能塊的設(shè)計,底層的具體功能通過VHDL語言編程實現(xiàn)。
4.1 頂層設(shè)計[6、7]
自頂向底的設(shè)計過程是在軟件中先從系統(tǒng)級功能設(shè)計開始,然后分別設(shè)計并驗證系統(tǒng)中不同的功能塊。這種設(shè)計方法的好處是可以不斷地向設(shè)計中添加新的功能模塊,完善系統(tǒng)的功能。
在頂層中主要設(shè)計了三個功能模塊: 預(yù)分頻模塊、次分頻模塊、譯碼模塊。功能塊圖見圖5。系統(tǒng)上電工作時,首先由晶振為系統(tǒng)提供精確的基頻信號,通過預(yù)分頻模塊將原有基頻信號轉(zhuǎn)化為400Hz的時序信號,將400Hz的信號通過次分頻模塊進行二分頻和四分頻[6,7],將分頻所得100Hz和200Hz的信號輸入譯碼器模塊[7],通過譯碼產(chǎn)生時序間隔為2.5ms的精確時序控制信號。
4.2 底層設(shè)計
系統(tǒng)功能驗證完成后,將抽象的頂層設(shè)計向低層設(shè)計細(xì)化,底層軟件設(shè)計是基于頂層軟件中三大功能模塊而設(shè)計的,模塊設(shè)計采用VHDL語言描述完成,通過編譯、綜合、仿真后生成底層設(shè)計文件,以供頂層設(shè)計調(diào)用。以fenpin模塊為例,部分程序如下:
architecture rt of fenpin is
signal temp :std_logic_vector(1 downto 0);
begin
process(clk,temp,en)
begin
if en=’1’ then
if rising_edge(clk) then
temp=temp+’1’;
end if;
null;
end if;
end process;
clk2=temp(0);
clk4=temp(1);
end rt;
5、系統(tǒng)仿真和驗證
軟件設(shè)計完成后,通過Quartus II軟件指定芯片為EPM570T100C5,并根據(jù)電路原理圖進行引腳分配,設(shè)定CPLD的引腳功能,然后啟動編譯程序來編譯項目。編譯器將進行錯誤檢查、網(wǎng)表提取、邏輯綜合和器件適配,然后進行行為仿真、功能仿真和時序仿真,最后用下載電纜通過JTAG編程方式將文件下載到芯片中,從而生成硬件電路。
圖6為系統(tǒng)軟件仿真的結(jié)果,從圖中可以發(fā)現(xiàn),生成的時序控制信號狀態(tài)穩(wěn)定,精度為納秒級。
圖7為將程序下載到目標(biāo)芯片,硬件工作時通過邏輯分析儀觀察到的系統(tǒng)實際工作狀態(tài)圖,可以發(fā)現(xiàn)系統(tǒng)實際工作狀態(tài)與理論設(shè)計思想相一致。圖中的三路時序控制信號精度較高、狀態(tài)穩(wěn)定,無毛刺和漂移現(xiàn)象,為提高系統(tǒng)的穩(wěn)定性和接收矩陣的精度奠定了基礎(chǔ)。
評論