实验一 FPGA VHDL四选一数据选择器的设计
实验一四选一数据选择器的设计

实验一四选一数据选择器的设计实验目的:设计并实现一个四选一数据选择器,可以将四个输入信号中的一个作为输出信号进行传递。
实验原理:四选一数据选择器是多路选择器的一种,主要由输入端、控制端和输出端组成。
输入端有四个信号输入线,控制端有两个控制输入线,输出端有一个信号输出线。
通过控制输入线的不同组合,可以选择其中一个输入信号传递到输出端。
实验材料与器件:1.1片74LS153(二选四数据选择器)芯片2.4个开关按钮3.连接线4.电源线5.示波器(可选)实验步骤:1.连接电路:a. 将芯片74LS153的Vcc引脚连接到正极电源线,将GND引脚连接到负极电源线。
b.将芯片的1A、1B、2A、2B四个输入引脚分别连接到四个开关按钮。
c.将芯片的S0、S1两个控制输入引脚分别连接到两个控制开关按钮。
d.将芯片的Y输出引脚连接到输出信号线。
e.将电源线接入电源插座,通电。
2.设置控制输入:a.初始状态下,所有控制输入引脚都为低电平状态。
b.可以通过控制两个开关按钮的开关状态来改变控制输入引脚的电平。
3.输出结果观测:a.打开示波器,将其输入端连接到芯片的输出引脚,设置为观测模式。
b.通过改变控制输入的电平状态,可以选择不同的输入信号进行输出。
c.观察示波器上的输出信号波形,确保输出信号与选择的输入信号一致。
4.实验记录:a.记录不同控制输入状态下的输入信号及输出信号。
b.通过对比观测结果,验证芯片的正常工作。
实验注意事项:1.连接电路时,注意电源接线正确,避免短路或电路损坏。
2.实验过程中操作电路和仪器时,保持手部干燥,并确保安全。
3.实验完成后,关闭电源,将电路和仪器恢复原状,并整理实验记录。
4.若没有示波器,可以通过观察输出信号线连接的LED灯的亮灭来判断输出信号的状态。
实验结果与讨论:在实验中,我们设计并实现了一个四选一数据选择器,并通过改变控制输入的电平状态来选择不同的输入信号进行输出。
通过观察观测结果,我们可以发现当控制输入引脚的电平状态为低-低时,选择1A作为输出;当为低-高时,选择1B作为输出;当为高-低时,选择2A作为输出;当为高-高时,选择2B作为输出。
4选1多路选择器VHDL语言设计

4选1多路选择器VHDL语言设计在VHDL语言中设计一个4选1多路选择器主要涉及到以下几个方面:实体声明、端口声明、内部信号声明、内部结构设计、行为建模以及仿真测试。
下面是一个VHDL语言设计的参考模板,详细解释了每个步骤的实现方法。
1. 实体声明(Entity Declaration)```vhdlentity mux_4to1 isportA, B, C, D : in std_logic;S : in std_logic_vector(1 downto 0);CLK : in std_logic;Y : out std_logicend mux_4to1;```2. 端口声明(Port Declaration)端口声明定义了输入和输出端口的类型。
在这个例子中,输入和输出端口的类型都是标准逻辑类型。
```vhdlarchitecture behavioral of mux_4to1 issignal input_mux : std_logic_vector(3 downto 0);beginA <= input_mux(0);B <= input_mux(1);C <= input_mux(2);D <= input_mux(3);end behavioral;```3. 内部信号声明(Internal Signal Declaration)内部信号声明是为了辅助模块内的信号传输和处理。
在这个例子中,我们需要声明一个内部信号来保存选择信号S对应的多路选择器输入信号。
```vhdlarchitecture behavioral of mux_4to1 issignal input_mux : std_logic_vector(3 downto 0);signal mux_out : std_logic;beginA <= input_mux(0);B <= input_mux(1);C <= input_mux(2);D <= input_mux(3);end behavioral;```4. 内部结构设计(Internal Structure Design)内部结构设计定义了多路选择器的逻辑结构。
VHDL语言设计4选1多路选择器讲解学习

V H D L语言设计4选1多路选择器4选1多路选择器的VHDL描述要求:THEN语句和CASE语句实现4选1多路选择器,其中选择控制信号s1和s0的数据类型为STD_LOGIC_VECTOR;当s1=‟0‟,s0=‟0‟;s1=‟0‟,s0=‟1‟;s1=‟1‟,s0=‟0‟和s1=‟1‟,s0=‟1‟时,分别执行y<=a、y<=b、y<=c、y<=d。
一、解法1:用IF_THEN语句实现4选1多路选择器(1)程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY mux41 ISPORT (a,b,c,d: IN STD_LOGIC;s0: IN STD_LOGIC;s1: IN STD_LOGIC;y: OUT STD_LOGIC);END ENTITY mux41;ARCHITECTURE if_mux41 OF mux41 ISSIGNAL s0s1 : STD_LOGIC_VECTOR(1 DOWNTO 0);--定义标准逻辑位矢量数据BEGINs0s1<=s1&s0; --s1相并s0,即s1与s0并置操作PROCESS(s0s1,a,b,c,d)BEGINIF s0s1 = "00" THEN y <= a;ELSIF s0s1 = "01" THEN y <= b;ELSIF s0s1 = "10" THEN y <= c;ELSE y <= d;END IF;END PROCESS;END ARCHITECTURE if_mux41;(2)编译的结果如下:编译报告:二、解法2:用CASE语句实现4选1多路选择器(1)程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY mux41 ISPORT (a,b,c,d: IN STD_LOGIC;s0: IN STD_LOGIC;s1: IN STD_LOGIC;y: OUT STD_LOGIC);END ENTITY mux41;ARCHITECTURE case_mux41 OF mux41 ISSIGNAL s0s1 : STD_LOGIC_VECTOR(1 DOWNTO 0);--定义标准逻辑位矢量数据类型BEGINs0s1<=s1&s0; --s1相并s0,即s1与s0并置操作PROCESS(s0s1,a,b,c,d)BEGINCASE s0s1 IS --类似于真值表的case语句WHEN "00" => y <= a;WHEN "01" => y <= b;WHEN "10" => y <= c;WHEN "11" => y <= d;WHEN OTHERS =>NULL ;END CASE;END PROCESS;END case_mux41;(2)编译结果:编译报告:。
基于FPGA实现四选一选择器的设计

基于FPGA实现四选一选择器的设计摘要本文是基于FPGA的四选一选择器的设计:基于FPGA在数据选择方面的优势,把FPGA作为选择器的控制核心;主要研究如下:软件部分——四选一选择器程序。
针对数据选择器的设计,对FPGA进行了型号选择,使用VHDL语言在型号FLEX10K/20RC208-4上编写了四选一选择器的程序,通过使能端的控制,从而达到四选一的功能。
硬件部分——使用protel画出原理图并作出PCB板。
本设计采用了单八路模拟开关CD4051,通过输入端的控制,选择一路信号,通过ADC0804模数转化,输出8路信号给FLEX10K/20RC208-4,经FLEX10K/20RC208-4处理后,接TCL7528后,将数字信号转换为模拟信号并输出。
本文通过软件和硬件的两个方面的设计,实现了四选一选择器的功能。
关键词:FPGA ;VHDL ;PROTEL ;选择器内蒙古科技大学毕业设计说明书(毕业论文)FPGA implementation based on four selected design of a selectorAbstrateThis article is based on a choice selection of four FPGA Design: FPGA-based data selection in the advantages of the FPGA as a selector control center; main research are as follows:Software parts - 4 election a choice program. Design for data selection, model selection on the FPGA, using the VHDL language in the model FLEX10K/20RC208-4 four selected to write a program selector, by enabling the client to control, so as to achieve a function of four elections.Hardware - protel schematic drawing and make a PCB board. This design uses a single eight-way analog switches CD4051, through the control input, select the way the signal, ADC0804 module through the transformation of the output signal 8 to FLEX10K/20RC208-4, by FLEX10K/20RC208-4 treatment, then TCL7528, will digital signal is converted to analog signals and output.In this paper, two aspects of hardware and software design, implementation, choose one of four selector functions.Keywords: FPGA ; VHDL ; ROTEL ; selectorI目录摘要 .............................................................................................................................................. Abstrate (I)第一章绪论 01.1 FPGA简介 01.1.1 FPGA发展现状 01.1.2 FPGA的发展趋势 (1)1.1.3 FPGA基本结构 (1)1.1.4 FPGA的特点 (3)1.1.5 FPGA选型 (4)1.1.6 FPGA设计原则 (5)1.2本论文研究的主要内容 (6)第二章FPGA芯片设计 (7)2.1 BTYG-EDA实验开发系统简介 (7)2.1.1 BTYG-EDA实验开发系统特点 (7)2.1.2 BTYG-EDA实验开发系统资源介绍 (7)2.1.3 主芯片引脚和外部硬件连接关系 (7)2.2 FLEX10K/20RC208-4 (11)2.3 本章小结 (13)第三章MAX+plus II软件和VHDL语言――软件部分 (14)3.1 MAX+plus II开发软件 (14)3.1.1 MAX+plus II功能特点 (14)3.1.2 MAX+plus II系统要求 (15)3.1.3 MAX+plus II设计流程 (15)3.2 VHDL语言简介 (18)3.2.1 VHDL基本介绍 (18)3.2.2 VHDL语言的特点 (19)3.2.3 VHDL系统优势 (20)II内蒙古科技大学毕业设计说明书(毕业论文)3.2.4 VHDL程序基本结构 (20)3.3 MAX十plus II中硬件描述语言输入的设计过程 (21)3.3.1 输入VHDL文件 (21)3.3.2 将文件指定为设计项目 (21)3.3.3 项目编译 (22)3.3.4 项目仿真 (22)3.4 程序仿真介绍及仿真图 (22)3.5本章小结 (24)第四章protel99——硬件部分 (25)4.1 protel简介 (25)4.1.1 Protel99SE的功能特点 (25)4.1.2 用Protel99SE进行电路设计的步骤 (26)4.2 四选一选择器的原理图及各元件介绍 (26)4.3 本章小结 (33)第五章总结与展望 (34)5.1 取得的成果 (34)5.2 工作展望 (34)参考文献 (35)附录A (36)附录B (37)致谢 (39)III第一章绪论1.1 FPGA简介1.1.1 FPGA发展现状当今社会是数字化的社会,是数字集成电路广泛应用的社会,数字集成电路本身在不断地进行更新换代。
EDA技术-VHDL-四选一数据选择器程序设计与仿真实验

EDA技术-VHDL-四选⼀数据选择器程序设计与仿真实验四选⼀数据选择器程序设计与仿真实验1 实验⽬的(1) 熟悉在QuartusⅡ软件平台上建⽴⼯作库⽂件和编辑设计⽂件的⽅法。
(2) 熟悉创建⼯程⽂件⽅法。
(3) 熟悉编译前设置和启动全程编译设置的⽅法。
(4) 熟悉波形编辑器的使⽤⽅法(5) 熟悉在QuartusⅡ软件平台上对设计进⾏仿真的操作全过程(6) 会⽤VHDL语⾔设计⼀个四选⼀数据选择器。
2 实验原理数据选择器⼜叫“多路开关”。
数据选择器在地址码(或叫选择控制)电位的控制下,从⼏个数据输⼊中选择⼀个并将其送到⼀个公共的输出端。
数据选择器的功能类似⼀个多掷开关,如图3.2.1所⽰,图中有四路数据a、b、c、d输⼊,通过选择控制信号 s1、s2(地址码)从四路数据中选中某⼀路数据送⾄输出端y。
逻辑功能如表3.2.1所⽰。
图3.2.1 四选1数据选择器⽰意图表3.2.1 四选⼀数据选择器逻辑功能表从表3.2.1中可知使能端en=1时,不论a~c输⼊状态如何,均⽆输出(y=1,因为所⽤器件的显⽰电路是共阳极),多路开关被禁⽌。
使能端en=0时,多路开关正常⼯作,根据地址码s2、s1的状态选择a~c输⼊信号中某⼀个通道的数据输送到输出端y。
3 实验内容(1) 建⽴⼀个四选⼀数据选择器的⽂件夹。
(2) 在定义好的VHDL模型中完成四选⼀数据选择器的描述,并创建⼯程。
(3) 设计完成后进⾏全程编译,检查源程序编写是否正确。
(4) 建⽴波形编辑⽂件并对输⼊波形进⾏编辑。
(5) 启动仿真器进⾏仿真,并分析仿真结果。
4 实验预习与思考(1) 进⼀步学习在QuartusⅡ软件平台上建⽴⼯作库⽂件和编辑设计⽂件的⽅法。
(2) 进⼀步学习建⽴波形编辑器⽂件编辑输⼊波形的⽅法。
(3) VHDL语⾔的结构体在整个程序中起什么作⽤。
5 VHDL仿真实验(1)新建⼀个⽂件夹。
本例中⽂件夹名为mux。
(2)输⼊源程序,打开计算机桌⾯上图标。
基于fpga的四选一数据选择器和一位全加器的设计

ENTITY mux21 ISPORT(A,B,S : IN BIT;Y : OUT BIT);END ENTITY mux21;ARCHITECTURE one OF mux21 ISBEGINY <= A WHEN S= '0' ELSE B;END ARCHITECTURE one;ENTITY xor2 ISport(a,b : in bit;c : out BIT);end entity xor2;ARCHITECTURE one OF xor2 ISbeginc <= '0' when a=b else '1' ;end ARCHITECTURE one;ENTITY mux41 ISPORT(A,B,C,D,S1,S2 : IN BIT;Y : OUT BIT);END ENTITY mux41;ARCHITECTURE ons OF mux41 IS COMPONENT mux21PORT(A,B,S : IN BIT;Y : OUT BIT);END COMPONENT;COMPONENT xor2port(a,b : in bit;c : out bit);END COMPONENT;SIGNAL d1,e,f : bit ;BEGINu1 : mux21 PORT MAP(A=>A,B=>B,S=>S1,Y=>e); u2 : mux21 PORT MAP(A=>C,B=>D,S=>S2,Y=>f); u3 : xor2 PORT MAP(a=>S1,b=>S2,c=>d1);u4 : mux21 PORT MAP(A=>e,B=>f,S=>d1,Y=>Y); END ARCHITECTURE ons;(四选一)LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY h_adder ISPORT(A,B : IN STD_LOGIC;CO,SO : OUT STD_LOGIC);END ENTITY h_adder;ARCHITECTURE fh1 OF h_adder ISBEGINSO <= NOT(A XOR (NOT B));CO <= A AND B;END ARCHITECTURE fh1;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY or2a ISPORT(a,b : IN STD_LOGIC;c : OUT STD_LOGIC);END ENTITY or2a;ARCHITECTURE one OF or2a ISBEGINc <= a OR b;END ARCHITECTURE one;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY f_adder ISPORT(ain,bin,cin : IN STD_LOGIC;cout,sum : OUT STD_LOGIC);END ENTITY f_adder;ARCHITECTURE fd1 OF f_adder ISCOMPONENT h_adderPORT(A,B : IN STD_LOGIC;CO,SO : OUT STD_LOGIC);END COMPONENT;COMPONENT or2aPORT(a,b : IN STD_LOGIC;c : OUT STD_LOGIC);END COMPONENT;SIGNAL d,e,f : STD_LOGIC;BEGINu1 : h_adder PORT MAP(A=>ain, B=>bin, CO=>d, SO=>e); u2 : h_adder PORT MAP(A=>e, B=>cin, CO=>f, SO=>sum); u3 : or2a PORT MAP(a=>d, b=>f, c=>cout);END ARCHITECTURE fd1;LIBRARY IEEE;(一位全加器)。
实验一四选一数据选择器的设计

实验⼀四选⼀数据选择器的设计实验⼀四选⼀数据选择器的设计⼀、实验⽬的1、熟悉Quartus II软件的使⽤。
2、了解数据选择器的⼯作原理。
3、熟悉EDA开发的基本流程。
⼆、实验原理及内容实验原理数据选择器在实际中得到了⼴泛的应⽤,尤其是在通信中为了利⽤多路信号中的⼀路,可以采⽤数据选择器进⾏选择再对该路信号加以利⽤。
从多路输⼊信号中选择其中⼀路进⾏输出的电路称为数据选择器。
或:在地址信号控制下,从多路输⼊信息中选择其中的某⼀路信息作为输出的电路称为数据选择器。
数据选择器⼜叫多路选择器,简称MUX。
4选1数据选择器:(1)原理框图:如右图。
D0 、D1、D2、D3 :输⼊数据A1 、A0 :地址变量由地址码决定从4路输⼊中选择哪1路输出。
(2)真值表如下图:(3)逻辑图数据选择器的原理⽐较简单,⾸先必须设置⼀个选择标志信号,⽬的就是为了从多路信号中选择所需要的⼀路信号,选择标志信号的⼀种状态对应着⼀路信号。
在应⽤中,设置⼀定的选择标志信号状态即可得到相应的某⼀路信号。
这就是数据选择器的实现原理。
实验内容1、分别采⽤原理图和VHDL语⾔的形式设计4选1数据选择器2、对所涉及的电路进⾏编译及正确的仿真。
三、实验条件Quartus II实验环境四、实验与仿真原理图:D0 、D1、D2、D3 :输⼊数据A1 、A0 :地址变量由地址码决定从4路输⼊中选择哪1路输出。
(2)真值表如下图:仿真结果:St为功能端。
当st=1时y=0;当st=0时选择器才开始⼯作。
当a1a0=00时y=d0 a1a0=01时y=d1a1a0=10 时y=d2a1a0=11时y=d3完成了四选⼀的功能。
Vhdl编码:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity mux4 isport(a0,a1,a2,a3:in std_logic;s:in std_logic_vector(1 downto 0);y:out std_logic);end mux4;architecture archmux of mux4 isbeginy<=a0 when s="00" elsea1 when s="01" elsea2 when s="10" elsea3;end archmux;仿真:当s=0时y=a1;当s=1时y=a1;当s=2时y=a2;当s=3时y=a3 。
VHDL语言设计四选一选择器

课程: 数字逻辑与数字系统VHDL语言设计四选一选择器实验报告系:电子信息与计算机科学系专业:自动化班级:文自112—2班姓名:桑*超学号: 2011905192**指导教师:徐红霞学年学期:2012-2013学年(第一学期)2012年12月15日姓名: 桑*超班级: 文自112-2班学号: 2011905192** 试验: VHDL语言设计日期:2012.12.15 指导老师: 徐洪霞一、实验报告的名称: VHDL语言设计二、本次实验的目的:1.掌握VHDL 语言的设计技巧2.用VHDL语言设计四选一选择器三、设计过程:1.工程编译源:用VHDL语言编程。
2.功能仿真:将功能编译后的结果进行仿真。
3.引脚锁定:将个信号按要求分配到相应引脚.4.物理实现:将结果下载到所悬着的器件中四、写出源程序,画出防真波形图.library ieee;use ieee.std_logic_1164.all;entity mux4_1 isport( a,b,c,d : in std_logic;s : in std_logic_vector(1 downto 0);z : out std_logic );end mux4_1;architecture one of mux4_1 isbeginprocess(s,a,b,c,d)begincase s iswhen "00"=>z<=a;when "01"=>z<=b;when "10"=>z<=c;when "11"=>z<=d;when others =>z<=null;end case;end process;end one ;波形仿真图:五、实验总结,主要包括实验中所犯错误,怎样改正等1.在文件名必须与VHDL文件中的设计实体名保持一致。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验设备:FPGA实验箱
拟用芯片:Altera EP3C55F484C8
3.实验设计
1)系统原理
根据4选1数据选择器的工作原理,有公式:
Y= + B+ C+ D
可见,要实现功能,需要6个输入,一个输出。其中 是数据选择端,A,B,C,D是数据输入端。由 输出高低电平(开关信号)பைடு நூலகம்定数据的输出和传送。
实验二四选一数据选择器的设计
1实验目的
(1)进一步熟悉和掌握QartusII的使用方法;
(2)掌握FPGA实验箱使用方法;
(3)学习和掌握电路原理图的设计流程
1.实验内容
使用QartusII的元件库,通过元件图的方式设计具有4选1功能的数据选择器,并使用FPGA实验箱对程序进行硬件下载,验证。
2.实验条件
L7=1,L8=开
L7=开,L8=开
发声频率
很慢
慢
较快
快
表2-1 开关不同位置时蜂鸣器发声状态
实验箱结果如图2-5所示
图2-5实验箱进行试验
5.心得体会
通过这次实验,让我学习到了如何在QartusII中使用原理图的方式做出所需要的功能器件。也学会了如何使用FPGA实验箱。
使用实验箱旁边的频率信号低的4个信号做输入信号,通过FPGA实验箱上的蜂鸣器发出的声音频率快慢来测试实验是否成功。
A输入接入1HZ信号B输入接入4HZ信号
C输入接入8HZ信号D输入接入16HZ
SO输入接入L8开关S1输入接入L7开关
Y输出接入蜂鸣器
可得实验结果如下表 表2-1所示
L7=关,L8=关
L7=关,L8=开
2)电路原理图
建立原理图。元件项使用四个三接口与门和一个四接口的与门,以及两个非门构成。实验原理比较简单,就是用来实现四选一功能的实现。如图2-1所示
图2-1 4选1数据选择器的原理图
3)电路波形图
工程编译完成后,必须对其功能和时序性质进行仿真测试。下图就是实现仿真后的波形,满足原设计要求。如图2-2所示。
图2-2四选一数据选择器仿真后的波形
4)引脚锁定和硬件测试
为了能够对乘法器进行硬件验证,应将其输入信号锁定在芯片确定的引脚上,编译下载。其锁定输入信号、输出信号如下图2-3。‘
图2-3四选一数据选择器引脚锁定
5)编译文件下载
编译文件下载结果如图2-4所示。
图2-4 四选一数据选择器编译文件下载
4.实验结果