【正文】
0)。 ENTITY xitong IS PORT (SIN_ain : IN STD_LOGIC_VECTOR ( 7 DOWNTO 0 )。 END IF 。 END IF 。039。039。139。超過三分鐘時(shí)再另蜂鳴器工作 5 秒,進(jìn)行報(bào)警工作。 JISHI : OUT STD_LOGIC_VECTOR(15 DOWNTO 0))。 功能仿真: 掃描信號(hào)為 4,時(shí)間輸入為零,病房號(hào)為 3 連接器: 由于各個(gè)模塊成功之后進(jìn)行頂層設(shè)計(jì)時(shí),計(jì)時(shí)器與蜂鳴器的位寬不相等,故設(shè)計(jì)一個(gè)連接模塊,使得兩塊模版能夠順利銜接起?!?8 WHEN 1001=DISP=10010000 ?!?0 WHEN 0001=DISP=11111001 。 END IF 。 ELSE IF CNT2 =0100 THEN LEDCS=00000010。139。039。 BEGIN PROCESS(CLK) VARIABLE CNT : INTEGER RANGE 0 TO 20200。 USE 。 END IF 。 IF MINI11001 THEN MINI1=MINI1+1。 SEC1 =0000。 END IF。 THEN CNT := CNT +1。 SECOND1(3 DOWNTO 0 )=SEC1(3 DOWNTO 0)。 SECOND1,SECOND2,MINITUE1,MINITUE2:OUT STD_LOGIC_VECTOR(3 DOWNTO 0))。 TI=TIMECLK。 IF MINI20101 THEN MINI2=MINI2+1。EVENT AND TIMECLK =39。 END PROCESS。 ELSE IF CNT 20200000 THEN TIMECLK=39。 BEGIN IF CLK39。 ARCHITECTURE TWO OF TIME IS SIGNAL TIMECLK,MINI:STD_LOGIC。 基于 FPGA 的病房呼叫系統(tǒng)的設(shè)計(jì) 7 功能仿真: 計(jì)時(shí)器: 由設(shè)計(jì)要求計(jì)時(shí)用四個(gè)數(shù)碼管顯示 mm, ss,所以時(shí)間方面采用的是以秒進(jìn)位,實(shí)驗(yàn)箱中頻率為 20MHz,所以選擇了 0: 20200000 即一秒的分頻,另外由于有呼叫信號(hào), SP=1,我們得立即即使,所以定義了每個(gè) 1 秒之內(nèi)出現(xiàn)一個(gè)上升沿,當(dāng)上升沿到來時(shí)時(shí)間加計(jì) 1s,另外 mmss之中前一個(gè) m 代表的是分的十位,后一個(gè)代表的是分的個(gè)位,前一個(gè) s代表的是秒的十位,后一個(gè) s 代表的是秒的個(gè)位。 END IF。 ELSE IF YOU1=0011 THEN ZQ=SOUT3(2)。 END IF。 ELSE IF YOU1=0100 THEN LJ=REST(3)。 YOU1:IN STD_LOGIC_VECTOR(3 DOWNTO 0)。 YOU1=YOU。 END IF 。 ELSE IF SOUT(6)=39。139。 THEN YOU=0001。 USE 。 END PROCESS。139。 AND SIN(6)=39。139。 THEN SOUT(4)=39。139。 ELSE SOUT(2)=39。039。 END IF。 BEGIN PROCESS(REST,SIN) BEGIN 基于 FPGA 的病房呼叫系統(tǒng)的設(shè)計(jì) 3 IF REST(0)=39。 USE 。如在 3 分鐘內(nèi)有應(yīng)答,則顯示下一個(gè)病房的病房號(hào)與時(shí)間,同樣當(dāng)計(jì)時(shí)器的時(shí)間超過 3 分鐘時(shí)報(bào)警,如在 3 分鐘內(nèi)有應(yīng)答則顯示下一個(gè),以此類推。充分利用了 FPGA 的可編程能力與 VHDL 語(yǔ)言 的課移植性和原理圖編輯 的直觀性等 優(yōu)點(diǎn)。這在病房呼叫系統(tǒng)中是必不可少的。 即分為鎖存器、數(shù)據(jù)選擇器、時(shí)間選擇器、計(jì)時(shí)器、顯示器、蜂鳴器與連接器幾個(gè)模塊組成。 SOUT1:OUT STD_LOGIC_VECTOR(7 DOWNTO 0)。139。 AND SIN(1)=39。139。 IF REST(3)=39。 END IF。039。 ELSE SOUT(5)=39。139。 THEN SOUT(7)=39。 SOUT3=SOUT。 YOU2:OUT STD_LOGIC_VECTOR(3 DOWNTO 0))。 THEN YOU=0010。139。 ELSE IF SOUT(7)=39。 END IF 。 功能仿真: 時(shí)間選擇器: 考慮到復(fù)位鍵一一對(duì)應(yīng)的問題,我們的計(jì)時(shí)器又只用了一個(gè),顯示當(dāng)前最優(yōu)先病房的等待時(shí)間,所以時(shí)間選擇器連在數(shù)據(jù)選擇器 的后面以及八個(gè)位寬的復(fù)位信號(hào)相連,然后通過數(shù)據(jù)選擇器,使得輸出地復(fù)位信號(hào)為當(dāng)前最優(yōu)先的病房所對(duì)應(yīng)的復(fù)位信號(hào)?!?對(duì)應(yīng)計(jì)時(shí)器 SP LJ:OUT STD_LOGIC)。 ELSE IF YOU1=0111 THEN LJ=REST(6)。 END IF。 ELSE IF YOU1=0110 THEN ZQ=SOUT3(5)。 END IF。 USE 。 BEGIN MINITUE1(3 DOWNTO 0)=MINI1(3 DOWNTO 0)。 AND SP=39。 TIMECLK=39。 THEN MINI2 =0000。 ELSE SEC1=0000。 END IF 。 程序二: LIBRARY IEEE。 SIGNAL CLK12:STD_LOGIC_VECTOR(3 DOWNTO 0 )。 BEGIN IF (CLK39。 ELSE IF CNT 120 THEN TIMECLK=39。 IF REST=39。139。 ELSE MINI2=0000。 END TWO 。 YOU:IN STD_LOGIC_VECTOR(3 DOWNTO 0)。139。 END IF?!?片選信號(hào) DATA=MINITUE2。 DATA=SECOND1。 END IF?!?3 WHEN 0100=DISP=10011001 ?!?橫杠 基于 FPGA 的病房呼叫系統(tǒng)的設(shè)計(jì) 13 WHEN 1100=DISP=11111111 。 USE 。 JISHI(11 DOWNTO 8)=SECOND2。 ENTITY FENGMING IS PORT( BCD: IN STD_LOGIC_VECTOR(15 DOWNTO 0)。 ELSE IF BCD=0010000000000000 THEN ING=39。 ELSE ING=39。 ELSE IF BCD=0011000000110000 THEN ING=39。 END IF 。 END PROCESS 。 MING_out,L: OUT STD_LOGIC。 SOUT2:OUT STD_LOGIC_VECTOR(7 DOWNTO 0)。 YOU1:IN STD_LOGIC_VECTOR(3 DOWNTO 0)。 END COMPONENT 。 MING: OUT STD_LOGIC)。 SIGNAL B : STD_LOGIC_VECTOR ( 15 DOWNTO 0 ) 。 SIGNAL J : STD_LOGIC_VECTOR ( 3 DOWNTO 0 ) 。 U7 : DISPLAY PORT MAP ( DISP = DISP_out , LEDCS = LEDCS_out , YOU = G ,CLK = CLK_ain , SECOND1 = H , SECOND2 = I , MINITUE1 = J , MINITUE2 = K )。 5 秒?yún)^(qū) 6 秒?yún)^(qū) 7 秒?yún)^(qū) 基于 FPGA 的病房呼叫系統(tǒng)的設(shè)計(jì) 20 5 參考文獻(xiàn) 【 1】 EDA技術(shù)使用教程 潘松,黃繼業(yè)著 北京 科學(xué)出版社 【 2】 EDA技術(shù)與 VHDL 黃繼業(yè)著 北京 清華大學(xué)出版社 【 3】 附件 Based on FPGA ward called system design Abstract: Ward call system, as the name suggests, is a patient that doctors and nurses are without him seek doctor for help. This ward calling system is based on FPGA. Through the FPGA design of different design we method of the modular design and finally adopted with the principle diagram language, VHDL bined method of design. Make full use of the FPGA programmable ability and VHDL language lesson portability and schematic diagram of the intuitive editing etc. We realized the function of the system call ward. Keywords: ward calling, system, FPGA, Modules, VHDL 基于 FPGA 的病房呼叫系統(tǒng)的設(shè)計(jì) 21 LIBRARY IEEE。 LEDCS_out : OUT STD_LOGIC_VECTOR ( 7 DOWNTO 0 )。 END COMPONENT。 ZQ:OUT STD_LOGIC。 SECOND2 : IN STD_LOGIC_VECTOR(3 DOWNTO 0)。 COMPONENT DISPLAY PORT (CLK:IN STD_LOGIC。 SIGNAL D : STD_LOGIC 。 BEGIN U1 : SUOCUNQI PORT MAP ( SIN = SIN_ain ,SOUT1 = A , REST = RST_ain , SOUT3 = E , SOUT2 = SCOUT )。 SUOCUNMOKUAI LIBRARY IEEE。 ARCHITECTURE bhv OF SUOCUNQI IS SIGNAL SOUT:STD_LOGIC_VECTOR(7 DOWNTO 0)。039。 ELSE SOUT(1)=39。139。 THEN SOUT(3)=39。139。 AND SIN(5)=39。139。 IF REST(7)=39。 END IF。 ENTITY HUANYOU IS PORT(SOUT:IN STD_LOGIC_VECTOR(7 DOWNTO 0)。 ELSE IF SOUT(1)=39。 THEN YOU=0100。139。 END IF 。 YOU2=YOU。 LJ:OUT STD_LOGIC)。 ELSE IF YOU1=0111 THEN LJ=REST(6)。 END IF。 ELSE IF YOU1=0110 THEN ZQ=SOUT3(5)。 END IF。 ENTITY TIME1 IS PORT(REST,SP,CLK:IN STD_LOGIC。 BEGIN MINITUE1(3 DOWNTO 0)=MINI1(3 DOWNTO 0)。) AND SP=39。 TIMECLK=39。 MINI1=0000。 IF SEC20101 THEN SEC2=SEC2+1。 END IF 。 ENTITY SOU IS PORT(SECOND1 : IN STD_LOGIC_VECTOR(3 DOWNTO 0)。 JISHI(7 DOWNTO 4)=MINITUE1。 基于 FPGA 的病房呼叫系統(tǒng)的設(shè)計(jì) 29 ARCHITECTURE BHV OF FENGMING IS SIGNAL ING : STD_LOGIC。039。039。039。 END IF 。 USE 。 ARCHITECTURE ONE OF DISPLAY IS SIGNAL CLK_1K : STD_LOGIC 。 ELSE CNT:=0。 VARIABLE CNT3: INTEGER RANGE 0 TO 2 。 ELSE IF CNT2 =0010 THEN