,
(北京理工大學(xué) 機車學(xué)院,北京 100081)
AlteraMAXVCPLD的工程設(shè)計應(yīng)用及系統(tǒng)開發(fā)
張志明,崔濤
(北京理工大學(xué) 機車學(xué)院,北京 100081)
本文闡述了Altera MAX V最小系統(tǒng)從硬件原理圖到PCB設(shè)計、從軟件QuartusII編寫VHDL到Modelsim-Altera的軟件仿真,以及最終的程序下載到開發(fā)板上的整個工程設(shè)計調(diào)試過程,為后續(xù)的Altera MAX V工程設(shè)計應(yīng)用提供技術(shù)參考和支持。
Altera MAX V;VHDL;仿真;工程調(diào)試
Altera MAX CPLD廣泛應(yīng)用于電子電器行業(yè),幾乎可實現(xiàn)所有數(shù)字和模擬控制功能,而且容易集成到系統(tǒng)中。采用CPLD器件,可以解決電路板級問題,使設(shè)計人員主要精力集中在更復(fù)雜的設(shè)計難題上。近年Altera的MAX II系列在CPLD市場上占據(jù)領(lǐng)導(dǎo)地位,其采用了TSMC成本優(yōu)化的1.8 V、0.18 μm、6層金屬Flash工藝,廣泛應(yīng)用在大批量消費類、通信、工業(yè)和計算機行業(yè)。目前MAX II系列已停產(chǎn),Altera推出了MAX V系列,靜態(tài)功耗低至45 μw,密度在40~2 210個邏輯單元之間,引腳布局中提供更多的I/O和邏輯,提供各種低成本、無鹵素封裝(EQFP、TQFP、MBGA),滿足環(huán)境標準要求,對于Altera MAX V進行工程應(yīng)用的開發(fā)設(shè)計、調(diào)試非常重要。
從Altera官網(wǎng)MAX V型號中選擇價格、結(jié)構(gòu)、性能等處于中等的5M570ZT100I5芯片,軟件采用Quartus II進行編寫,并用Modelsim-Altera進行仿真,硬件電路采用Protel進行設(shè)計。Quartus II的軟件設(shè)計采用VHDL語言編程,因其語言構(gòu)架類似于C語言,易于理解,在Quartus II中也有全面的VHDL語言模板可以參照,易學(xué)易用。
在整個工程設(shè)計應(yīng)用中,先進行硬件電路的設(shè)計,在硬件電路制造階段進行VHDL語言的測例編程和模擬仿真,最終下載到硬件電路中進行驗證調(diào)試。
2.1 原理圖設(shè)計
原理圖設(shè)計分為供電電路設(shè)計、時鐘電路設(shè)計、程序下載電路設(shè)計、普通I/O端口的輸入/輸出設(shè)計。
(1)供電電路設(shè)計
根據(jù)官網(wǎng)資料介紹,MAX V系列的I/O電壓為3.3 V,Core Voltage為1.8 V,因此需選用AMS1117的5 V轉(zhuǎn)3.3 V、5 V轉(zhuǎn)1.8 V兩種穩(wěn)壓器,選用SOT-223封裝類型,在VCCINT引腳(pin_13)上并聯(lián)10 μF電容。
(2)時鐘電路設(shè)計
MAX V系列的I/O口電壓為3.3 V,因此要選用3.3 V的有源晶振,在clk引腳(pin_12)和晶振out引腳之間用33 Ω電阻連接。
(3)程序下載電路設(shè)計
MAX V系列程序下載電路與MAX II系列的原理相同,選用標準BDM插頭,TMS、TDI引腳采用3.3 V供電,2只引腳與3.3 V電源之間串聯(lián)10 kΩ電阻;TCK引腳與GND之間串聯(lián)10 kΩ電阻。
(4)普通I/O端口的輸入輸出設(shè)計
普通I/O端口既可以作為信號輸入接口,也可以作為信號輸出接口。I/O端口的輸入/輸出電壓為3.3 V,無其他電路設(shè)計的特殊要求。本次將其直接引出,方便測例的調(diào)試驗證。
2.2 PCB設(shè)計
創(chuàng)建PCB項目文件,首先“選擇追加已有文件到項目中”,選擇上面所建立的原理圖文件,根據(jù)已有的原理圖文件生成PCB圖(如圖1所示),重點對時鐘信號線、電源線、地線、TCK、TDO、TDI、TMS等進行手工布線和線寬設(shè)置,其他線可在元器件擺放完后進行自動布線操作。
圖1 PCB圖
3.1 VHDL語言編程設(shè)計
MAX V采用Quartus II 12系列版本進行VHDL語言設(shè)計,在設(shè)計過程中要確保工程名稱與文件名稱命名一致,創(chuàng)建工程后,新建VHDL 文件,寫入測試語句:
library ieee;
use ieee.std_logic_1164.all; use ieee.std_logic_arith.all;
use ieee.std_logic_unsigned.all;
entity qudong570 is
port
(clk : instd_logic; p : out std_logic;
q : outstd_logic);
end entity;
architecture ad of qudong570 is
signal num:natural:=0; signal cut:natural:=0;
signal i:natural:=0; signal vet:std_logic:='1';
signal vvv:std_logic:='1';
begin
process (clk)
begin
if (clk'event and clk='1') then
num<=num+1;cut<=cut+1;
case num is
when 640=> vvv<='0'; when 960=> vvv<='1';
when 2000=> vet<='0';vvv<='0';cut<=0;i<=1;
when 2900=> cut<=0; when 3800=> cut<=0;
when 4700=> cut<=0; when 9200=> cut<=0;
when 16400=> num<=0;vet<='1';vvv<='1';cut<=0;i<=0;
when others=>NULL;end case;
if (cut=1008 and i=0)then
vvv<=vvv xor '1';cut<=960;/*脈寬48 μs*/
end if; end if;
end process; q<=vet; p<=vvv;end ad;
3.2 對VHDL語言程序的仿真
采用Modelsim-Altera對所編程序進行仿真,在仿真之前先用Quartus自動生成測試文件:[processing]-[start]-[start Test Bench Template Writer]。打開生成的測試文件,將時鐘設(shè)定為500 ns,保存后即可在Quartus中點擊[start compilation]進行仿真,仿真結(jié)果如圖2所示。
圖2 PCB仿真波形
圖3 采集真實波形
將編寫好的程序下載到開發(fā)板上,下載程序過程中,先將下載器與開發(fā)板BDM頭插接好,再與PC機的USB相連,最后將開發(fā)板與5 V直流電源接通,下載程序成功后,將開發(fā)板重新上電即可運行程序。將開發(fā)板與示波器連接,測試開發(fā)板輸出信號,信號如圖3所示,與Modelsim Altera仿真結(jié)果一致,開發(fā)板調(diào)試成功。
EngineeringDesignandSystemDevelopmentofAlteraMAXVCPLD
ZhangZhiming,CuiTao
(School of Locomotive,Beijing Institute of Technology,Beijing 100081,China)
In the paper,Altera MAX V minimum system is introduced,from the principle diagram of hardware to PCB design, and from a software quartus II writing VHDL to Modelsim-Altera software simulation,and the program downloaded to the development board,that provides technical reference and supports for Altera MAX V engineering design applications.
Altera MAX V;VHDL;simulation;debugging
TP338
A