《電子技術(shù)應用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計應用 > 應用CPLD實現(xiàn)交通控制系統(tǒng)芯片設(shè)計
應用CPLD實現(xiàn)交通控制系統(tǒng)芯片設(shè)計
摘要: 復雜可編程邏輯器件CPLD(Complex Programmable Logic Devices)順應了這一新的需要。它能將大量邏輯功能集成于1個芯片中,其規(guī)??蛇_幾十萬或上百門以上。用CPLD開發(fā)的數(shù)字系統(tǒng)個有容量大、速率快、成本低的特點,且開發(fā)靈活、開發(fā)周期短。
關(guān)鍵詞: CPLD 交通控制 MAX+PLUS II
Abstract:
Key words :

  集成電路的發(fā)展經(jīng)歷了從小規(guī)模、中規(guī)模、大規(guī)模和超大規(guī)模集成的過程,但隨著科學技術(shù)的發(fā)展,許多特定功能的專用集成電路(ASIC)應用日益廣泛,用戶迫切希望根據(jù)自身設(shè)計要求自行構(gòu)造邏輯功能的數(shù)字電路。復雜可編程邏輯器件CPLD(Complex Programmable Logic Devices)順應了這一新的需要。它能將大量邏輯功能集成于1個芯片中,其規(guī)??蛇_幾十萬或上百門以上。用CPLD開發(fā)的數(shù)字系統(tǒng)個有容量大、速率快、成本低的特點,且開發(fā)靈活、開發(fā)周期短。

  1 器件結(jié)構(gòu)和開發(fā)軟件

  1.1FLEX10K簡介

  FLEX系列可編程邏輯器件是美國Altera公司主力推出的產(chǎn)品。FLEX10K是該系統(tǒng)器件中的典型代表。與許多PLD器件一樣,它有在線可配置(ISR)功能和高密度、高速度的優(yōu)點;作為工業(yè)界第1個嵌入式PLD,它還采用重復可構(gòu)造的CMOSSRAM工藝,把連續(xù)的快速通道互連與獨特嵌入式陣列結(jié)構(gòu)相結(jié)合,來完成普通門陣列的宏功能。每個FLEX10K器件還1包括個嵌入式陣列和1個邏輯陣列,能讓設(shè)計人員輕松地開發(fā)集成存儲器、數(shù)字信號處理器及特殊邏輯功能等強大的功能于一身的芯片。圖1為其結(jié)構(gòu)圖。FLEX10K主要由邏輯陣列(logicarray)、嵌入式陣列(EAB)構(gòu)成。其中,邏輯陣列是由多個邏輯陣列塊(LAB)組成的,而每個邏輯陣列塊(LAB)又包含8個邏輯單元(logicelement),在每行、列互連通道的兩端都有輸入/輸出單元(IOE)。

結(jié)構(gòu)圖

  1.2 MAX+PLUSII開發(fā)軟件特點和設(shè)計流

  用CPLD實現(xiàn)數(shù)字系統(tǒng)設(shè)計電路,關(guān)鍵技術(shù)是必須有一個優(yōu)秀的開發(fā)軟件。Altera公司的開發(fā)軟件MAX+PLUS
II界面豐富,使設(shè)計靈活、方便、高效。

 ?。?)開放的界面

  MAX+PLUS II軟件可與其它工業(yè)標準設(shè)計輸入、綜合與校驗工具相連接。設(shè)計人員可以使用Altera或標準EDA設(shè)計輸入工具來建立邏輯設(shè)計,對器件設(shè)計進行編譯,并能使用Altera或其EDASF校驗工具進行器件仿真。

 ?。?)完全集成化的環(huán)境

  它是一個完全集成化、易學易用的可編程邏輯設(shè)計環(huán)境,設(shè)計輸入方式有圖形輸入、文本輸入、波形輸入、狀態(tài)機設(shè)計輸入。其編譯及設(shè)計處理寫仿真、定時分析、邏輯綜合與適配均為Windows圖形界面。

  (3)支持各種硬件描述語言

  支持各種HDL設(shè)計輸入選項,包括VHDL、VerilogHDL、ABEL、AHDL等硬件描述語言。

 ?。?)豐富的設(shè)計庫

  提供豐富的庫單元設(shè)計調(diào)用,包括74系列的全部器件和多種特殊的邏輯宏功能、新型的參數(shù)化兆功能。對于復雜的大系統(tǒng),設(shè)計者需調(diào)用宏單元庫,并對其修改某些參數(shù),而無需自己用基本邏輯單元來構(gòu)成某種功能,以大大減輕設(shè)計人員的工作量,縮短設(shè)計周期。

  電路的設(shè)計流程如圖2所示。將所設(shè)計的電路用原理圖輸入和硬件描述語言輸入,應用EDA軟件平臺(MAX+PLUS II)編譯通過后,再進行邏輯功能仿零點,生成目標文件,下載到FLEX10K芯片,完成系統(tǒng)設(shè)計。

電路的設(shè)計流程

  2 交通控制系統(tǒng)設(shè)計

  2.1 系統(tǒng)介紹

  圖3為一十字路口交通管理器,控制甲、乙2道的紅、黃、綠3色燈。計數(shù)顯示部分為2個倒計時器,顯示甲、乙車道允許通車時間,指揮車輛和行人安全通行。其R1、Y1、G1為甲道紅、黃、綠燈;R2、Y2、G2為乙道紅、黃、綠燈。

十字路口交通管理器

  甲道通告時間為t3,乙道通行時間為t2,黃燈亮(停車)時間為t1,C1、C2、C3為定時器工作使能信號,為1時定時器計數(shù);W1、W2、W3為定時器的指示信號,計數(shù)時信號為0,計數(shù)結(jié)束時信號為1。

  2.2 FLEX10K內(nèi)部邏輯功能設(shè)計

  交通控制系統(tǒng)芯片內(nèi)部邏輯功能設(shè)計采用自頂向下的設(shè)計方法,系統(tǒng)頂層電路如圖4所示。它分為5個次級模塊:控制器(traffic_control)、定時器1、定時器2、定時器3、(其定時時間為t3、t2和t1)、計數(shù)顯示(含減法計數(shù)器和動態(tài)掃描電路)。

系統(tǒng)頂層電路

  頂層電路圖中減法計數(shù)器和動態(tài)掃描電路用圖形輸入描述,其它次級模塊控制器、定時器1、定時器2、定時器3用VHDL硬件語言描述。核心模塊控制器的VHDL源文件如下:

程序

程序

程序

程序

程序

  3 功能編譯、設(shè)計仿真與硬件下載

  本系統(tǒng)采用Altera公司生產(chǎn)的FLEX10K系列的CPLD芯片,應用該公司的MAX+PLUS II開發(fā)軟件完成設(shè)計后,需對各種源文件從低層到頂層逐個編譯,再進行邏輯仿真。選擇器件后,打開檢查項目中所有設(shè)計文件,通過檢測發(fā)發(fā)現(xiàn)在編程器件中可能存在的可靠性不好的邏輯器件引腳分配。

  Altera公司推薦的編譯器可自動為項目進行引腳分配,也可人工調(diào)整引腳。在編譯器窗口選擇Start按鈕,將對所有設(shè)計的項目進行處理,出現(xiàn)錯誤將給出具體錯誤提示。為了保證設(shè)計的正確性,在編譯通過后,還需進行邏輯仿真。仿真通過后再應用MAX+PLUS II的編程器對所選可編程邏輯器件下載編程,便完成了交通控制系統(tǒng)的ASIC芯片設(shè)計和硬件固化。若在芯片外圍接入必要電源、脈沖信號、顯示器和指示燈,便構(gòu)成了一個完整交通控制系統(tǒng)。它具有工作穩(wěn)定、體積小、在線修改方便等特點。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。