【正文】
end process p8。num=c1。num=k1。num=m1。 end if。 else c0=c0+1。 if c2=1001 then c2=0000。 c2=0000。amp。cha2=c2。 else k0=k0+1。 else k1=k1+1。 end if。 w 0000001000000 then en1=39。 if m0=1001 then m0=0000。m1=000。139。 else f=39。039。f10=39。 else q15=q15+1。q10=0。 signal m0:std_logic_vector (3 downto 0)。architecture taxi_behav of taxi is signal f15,f10,f1:std_logic。 entity taxi is port ( clk: in std_logic。 end if。 elsif rising_edge(f1) then if(((s1=0101) and (s0=1001) and (m1=0101) and (m0=1001))or(h_add=39。 end if。039。 end if。 s1=0000。 led:out std_logic_vector (7 downto 0) )。use 。感謝我們系的系主任XX主任,感謝他為我們學(xué)習(xí)進(jìn)行指導(dǎo),同時(shí)感謝我們的輔導(dǎo)員,為我們學(xué)生所做的一切。 路程小于3公里●當(dāng)?shù)却龝r(shí)間大于2分鐘時(shí)的時(shí)序圖。f10代表里程單價(jià)為1元每分鐘。計(jì)價(jià)初始值為6大于3公里后,每公里為1元。K0是否按下K2是否為1賦初始值默認(rèn)單價(jià)啟動(dòng)計(jì)價(jià)有里程信號(hào)嗎夠一公里嗎有傳感信號(hào)嗎停止計(jì)價(jià)和里程計(jì)數(shù)開始計(jì)時(shí)YY總路程加一總金額加一NS2是否為1等待單價(jià)YYNYN夠一分鐘嗎等待時(shí)間加一YNNY。見系統(tǒng)仿真圖。clr信號(hào)為電子鐘清0使能信號(hào)。程序設(shè)計(jì)時(shí)將電子鐘顯示、里程和等待時(shí)間顯示、計(jì)費(fèi)顯示模塊的動(dòng)態(tài)掃描功能獨(dú)立出來,單獨(dú)設(shè)計(jì)一個(gè)共用的掃描模塊,因此將電子鐘顯示、里程和等待時(shí)間顯示、計(jì)費(fèi)顯示模塊各自都分為計(jì)數(shù)模塊和掃描兩個(gè)模塊?!裼?jì)程部分為:計(jì)算乘客所行駛的公里數(shù),計(jì)程器的量程為99公里,滿量程自動(dòng)歸零。3 出租車自動(dòng)計(jì)價(jià)系統(tǒng)的設(shè)計(jì) 系統(tǒng)基本設(shè)計(jì)思想及實(shí)現(xiàn)的功能及要求 系統(tǒng)基本設(shè)計(jì)思想本系統(tǒng)設(shè)計(jì)包含電子鐘和計(jì)價(jià)器的設(shè)計(jì),用VHDL語言實(shí)現(xiàn)整個(gè)系統(tǒng)的設(shè)計(jì),編程環(huán)境為Xilinx Foundation 。VHDL對設(shè)計(jì)的描述具有相對獨(dú)立性,設(shè)計(jì)者可以不懂硬件的結(jié)構(gòu),也不必管最終設(shè)計(jì)實(shí)現(xiàn)的目標(biāo)器件是什么,而進(jìn)行獨(dú)立的設(shè)計(jì)。在對一個(gè)設(shè)計(jì)實(shí)體定義了外部界面后,一旦其內(nèi)部開發(fā)完成后,其它的設(shè)計(jì)就可以直接調(diào)用這個(gè)實(shí)體?!耠娐吩O(shè)計(jì)人員使用FPGA/CPLD進(jìn)行電路設(shè)計(jì)時(shí),軟件易學(xué)易用。一般情況下CPLD器件中至少包含三種結(jié)構(gòu) :可編程邏輯功能塊 (FB)。所以布通率與多路轉(zhuǎn)換器的輸入寬度有關(guān),寬度愈大,所占面積增加,性能降低。 CPLD的基本結(jié)構(gòu)CPLD的集成度在千門/片以上,其基本結(jié)構(gòu)是由與陣列、或陣列、輸入緩沖電路、輸出宏單元組成?! oundation Series可編程器件開發(fā)系統(tǒng)是Xilinx公司設(shè)計(jì)的EDA工具,具有很強(qiáng)的開發(fā)和設(shè)計(jì)功能,是電子設(shè)計(jì)不可缺少的工具,他可以接受多種方式的輸入:原理圖輸入、文本輸入(硬件描述語言)、第三方EDA工具提供的接口等。CPLD有Xilinx公司的XC9500系列, Lattice公司的ispLSI/PLSI1000系列和MACH5系列,Altera公司的MAX7000系列和MAX9000系列等??删幊踢壿嬈骷≒LD,Programmable Logic Device)自問世以來,經(jīng)歷了從低密度的PROM、PLA、PAL、GAL到高密度的現(xiàn)場可編程門陣列(FPGA,F(xiàn)ield Programmable Gate Array)和復(fù)雜可編程邏輯器件CPLD(Complex Programmable Logic Device)/的發(fā)展過程。MPU技術(shù)的快速滲透刺激了MPU外圍LSI器件的發(fā)展。專用集成電路的英文是Application Specific Integrated Circuit, SIC是其英文縮寫。以出租車多功能計(jì)價(jià)器為例,用戶不僅要求計(jì)價(jià)器性能穩(wěn)定,計(jì)費(fèi)準(zhǔn)確;不同國家和地區(qū)的收費(fèi)方式存在差異,即使在同一地區(qū),不同車型的出租車其收費(fèi)方式也有差別,而且出租車還面臨幾年一次的調(diào)價(jià)或調(diào)整收費(fèi)方式等問題。數(shù)字集成電路由早期的電子管、晶體管、小中規(guī)模集成電路、發(fā)展到超大規(guī)模集成電路(VLSIC,幾萬門以上)以及許多具有特定功能的專用集成電路ASIC(Application Specific Integrated Circuit)。現(xiàn)在,使用可編程ASIC和相應(yīng)的EDA開發(fā)系統(tǒng),用戶可以借助計(jì)算機(jī)實(shí)現(xiàn)各種實(shí)際的數(shù)字電路或電子系統(tǒng)的設(shè)計(jì)、功能模擬、時(shí)間模擬以及系統(tǒng)調(diào)試。是否采用可編程ASIC來實(shí)現(xiàn)電子產(chǎn)品的設(shè)計(jì)已成為衡量電子產(chǎn)品是否先進(jìn)的標(biāo)準(zhǔn)之一。FPGA與CPLD都是可編程邏輯器件,它們是在PAL、GAL 等邏輯器件的基礎(chǔ)之上發(fā)展起來的,它們在高密度、高速度、低功耗等方面發(fā)展很快,同以往的PLA、PAL、GAL等相比較,FPGA/CPLD 的規(guī)模比較大,它可以替代幾十甚至幾千塊通用IC芯片。由美國國防部提出的VHDL(Very High Speed Integrated Circuit Hardware Description Language)即超高速集成電路硬件描述語言,是為了要解決項(xiàng)目間的信息交換困難和設(shè)計(jì)維護(hù)困難,同時(shí)也為解決當(dāng)時(shí)的超高速集成電路(VHSIC,Very High Speed Integrated Circuit)計(jì)劃而提出的一種硬件描述語言,采用高層次的、自頂向下的設(shè)計(jì)方法來描述硬件,非常適合當(dāng)前需要。與以往的PLA、PAL、GAL等相比較,F(xiàn)PGA/CPLD的規(guī)模比較大,它可以替代幾十甚至幾千塊通用IC芯片。一般互連矩陣有兩種形式:基于陣列的互連和基于多路開關(guān)的互連。CPLD又可分為在編程器上編程和在系統(tǒng)編程 (ISP) CPLD兩種。而 CPLD是邏輯塊級(jí)編程 ,且其邏輯塊互連是集總式的。 VHDL語言的優(yōu)點(diǎn)VHDL語言主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu)、行為、功能和接口?!馰HDL語句的行為描述能力和程序結(jié)構(gòu)決定了它具有支持大規(guī)模設(shè)計(jì)的分解和已有設(shè)計(jì)的再利用功能。該系統(tǒng)提供一個(gè)非常友好的用戶界面,具有很強(qiáng)的開發(fā)和設(shè)計(jì)功能。 計(jì)價(jià)系統(tǒng)功能框圖電子鐘實(shí)現(xiàn)功能及要求:●在LED數(shù)碼管上顯示時(shí)、分、秒;●設(shè)置清零按鍵clr,Clr信號(hào)有效時(shí),使小時(shí)為1和分鐘為1;●設(shè)置小時(shí)調(diào)整按鍵,使小時(shí)加1,設(shè)置分鐘調(diào)整按鍵,使分鐘加1計(jì)價(jià)器實(shí)現(xiàn)功能及要求:●實(shí)現(xiàn)預(yù)置功能,能預(yù)置起步費(fèi),且累計(jì)等待時(shí)間2分鐘內(nèi),起步費(fèi)3元;●實(shí)現(xiàn)計(jì)價(jià)、計(jì)時(shí)、計(jì)程功能:●計(jì)價(jià)部分為:起步費(fèi)6元,累計(jì)等待時(shí)間2分鐘內(nèi)不計(jì)費(fèi)。控制模塊是系統(tǒng)的核心部分,對計(jì)價(jià)器的狀態(tài)進(jìn)行控制。h_add信號(hào)有效時(shí),小時(shí)數(shù)字加1。小時(shí)位在累加到12時(shí)則清0,在累加時(shí)同時(shí)還要判斷調(diào)節(jié)信號(hào)(h_add、m_add)是否為0,不為0時(shí)則為電子鐘調(diào)節(jié),調(diào)節(jié)信號(hào)每來一個(gè)上升沿,對應(yīng)的分或小時(shí)加1。當(dāng)判斷到有等待信號(hào)時(shí),開始途中等待計(jì)價(jià)模式,開始等待時(shí)間計(jì)時(shí)。計(jì)時(shí)模塊: 等待計(jì)時(shí)模塊端口信號(hào)計(jì)時(shí)顯示兩位分辯率為一分鐘,最大計(jì)時(shí)量為99分鐘,f1為秒信號(hào),因此在編程時(shí)可以設(shè)置一個(gè)中間計(jì)數(shù)變量w,當(dāng)其計(jì)數(shù)達(dá)到60秒時(shí),等待時(shí)間的低位加一,并把這一變量清0,分鐘的高低位以計(jì)數(shù)達(dá)到9判斷進(jìn)位。 程序仿真圖出租車計(jì)價(jià)器VHDL程序仿真圖。仿真結(jié)果為行駛39公里,等待6分鐘,總費(fèi)用50元。 大學(xué)生活一晃而過,回首走過的歲月,心中倍感充實(shí),當(dāng)我寫完這篇課程設(shè)計(jì)的時(shí)候,有一種如釋重負(fù)的感覺,感慨良多。作為他們的孩子,我秉承了他們樸實(shí)、堅(jiān)韌的性格,也因此我有足夠的信心和能力戰(zhàn)勝前進(jìn)路上的艱難險(xiǎn)阻;也因?yàn)樗麄兊娜找剐羷?,我才有機(jī)會(huì)如愿完成自己的大學(xué)學(xué)業(yè),進(jìn)而取得進(jìn)一步發(fā)展的機(jī)會(huì)。 m_add: in std_logic。 begin p1: process(f1,clr) begin if(clr=39。 if((s1=0101) and (s0=1001)) then s1=0000 。 then m0=0001。 if((m1=0101)and(m0=1001))then