VHDL与数字系统课程设计
数字逻辑原理与VHDL设计课程设计

数字逻辑原理与VHDL设计课程设计一、课程设计背景数字逻辑原理与VHDL设计是数字集成电路设计专业中的一门重要基础课程,内容涵盖数字电路基础知识、组合逻辑电路设计、时序逻辑电路设计以及数字电路综合和优化等方面。
本课程设计旨在以实践为主,巩固和加深学生的理论知识,提高学生综合运用数字逻辑原理和VHDL语言进行数字电路设计的能力。
二、实验目的通过本次课程设计,要求学生对数字逻辑原理及其应用有更加深入的认识,并掌握以下专业能力:1.掌握数字逻辑电路的基本知识与方法,以及基于VHDL设计数字电路的基本步骤与方法;2.能够运用数字逻辑原理及VHDL语言进行简单数字电路的设计、仿真、综合和下载;3.能够独立进行数字电路设计并解决设计过程中遇到的问题。
三、实验设备和工具1.Xilinx Vivado软件,用于数字电路的综合和仿真;2.FPGA开发板,用于数字电路的下载和实现;3.电脑,用于Vivado软件的安装和使用。
四、实验内容和步骤实验一函数计算器的设计与实现实验目的通过设计一个函数计算器,深入理解组合逻辑电路的设计、实现和仿真过程,同时练习使用VHDL语言进行数字电路的编写、仿真和下载。
实验内容设计一个函数计算器,能够计算并显示四个前缀表达式,包括:–23 45–11 + 22 * 33–23 - 45 / 561./ 45 + 67 - 89其中,加减乘除的运算需要满足基本的优先级规则,即在没有括号的情况下,先乘除后加减。
实验步骤1.设计并编写函数计算器的VHDL代码,包括各种运算模块、数字选择器、显示器控制器等;2.在Vivado软件中进行仿真,验证函数计算器设计的正确性;3.将函数计算器设计综合成比特流文件,下载到FPGA开发板上进行实现和测试。
实验二五位计数器的设计与实现实验目的通过设计一个五位同步加法计数器,深入理解时序逻辑电路的原理、设计和实现过程,同时掌握VHDL语言对时序电路进行设计、仿真和下载的方法。
vhdl与数字系统课程设计

vhdl与数字系统课程设计一、课程目标知识目标:1. 学生能理解VHDL的基本语法和结构,掌握VHDL编程的基本方法。
2. 学生能运用VHDL语言设计简单的数字系统,如组合逻辑电路和时序逻辑电路。
3. 学生能理解数字系统的基本原理,掌握数字系统的设计方法和步骤。
技能目标:1. 学生能运用VHDL语言编写代码,实现特定功能的数字电路。
2. 学生能使用相关的EDA工具,如ModelSim进行VHDL代码的仿真和调试。
3. 学生能通过课程设计实践,培养解决实际问题的能力和团队协作能力。
情感态度价值观目标:1. 学生能培养对数字系统设计和VHDL编程的兴趣,激发创新思维和探索精神。
2. 学生在学习过程中,能树立正确的工程观念,注重实际应用和问题解决。
3. 学生能在团队合作中,学会互相尊重、沟通协作,培养良好的团队精神和职业素养。
课程性质分析:本课程为数字电路与系统相关专业的选修课程,旨在通过VHDL语言的学习,使学生掌握数字系统设计的基本方法和技能。
学生特点分析:学生已具备一定的电子电路基础知识,具有一定的编程能力和实践操作能力,但对VHDL语言和数字系统设计尚处于入门阶段。
教学要求:1. 结合课本内容,注重理论与实践相结合,提高学生的实际操作能力。
2. 通过课程设计,培养学生分析问题、解决问题的能力,增强学生的工程素养。
3. 注重激发学生的学习兴趣,引导学生主动探索,培养创新意识。
二、教学内容1. VHDL基础语法与结构- 数据类型与运算符- 顺序语句与并发语句- 子程序与程序包- 配置与库的运用2. 数字系统原理与设计方法- 组合逻辑电路设计- 时序逻辑电路设计- 数字系统层次化设计方法3. VHDL在数字系统设计中的应用- 代码编写规范与技巧- 仿真与调试方法- 常用数字电路的VHDL实现,如:编码器、译码器、计数器等4. 课程设计实践- 设计题目与要求- 团队协作与分工- 设计报告撰写与答辩教学大纲安排:第一周:VHDL基础语法与结构介绍第二周:数字系统原理与设计方法第三周:VHDL在数字系统设计中的应用第四周:课程设计实践与指导第五周:课程设计总结与评价教学内容关联教材:1. 《数字电路与系统》相关章节:组合逻辑电路、时序逻辑电路设计原理。
应用VHDL设计数字系统

04
VHDL设计实例
组合逻辑电路设计
总结词
描述了如何使用VHDL设计组合逻辑电路的过程。
详细描述
组合逻辑电路是数字系统中常见的电路类型,其特点是输入信号的变化立即反映在输出信号上,没有 存储功能。在VHDL中,可以使用"and", "or", "not"等逻辑运算符以及"case"语句等来设计组合逻辑 电路。
一款流行的VHDL仿真软件,支持多种仿真算法,提 供丰富的库和测试平台。
Icarus Verilog
开源的VHDL和Verilog仿真器,适用于学术研究和项 目开发。
GHDL
GNU工具链中的VHDL模拟器,支持多种操作系统和 平台。
VHDL测试平台
VUnit
基于ModelSim的测试框架,提供易于使用的 API进行测试编写和执行。
混合描述
总结词
混合描述是VHDL设计中的一种常用方法,它结合了行为描述 和结构描述的优点,能够更全面地描述数字系统。
详细描述
混合描述同时使用行为描述和结构描述来定义数字系统。它 通常在行为描述中包含结构描述的元件实例,以实现更具体 和详细的系统实现。混合描述可以描述各种规模的数字系统 ,并且能够更好地满足实际设计的需求。
详细描述
状态机是一种常见的数字系统设计方法,用 于描述系统的状态转换和行为。在VHDL中, 可以使用"if-then-else"语句和"case"语句 等来设计状态机。在设计过程中,需要定义 状态、状态转换条件和相应的动作,以确保 系统的正确运行。
05
VHDL仿真与测试
VHDL仿真工具
ModelSim
VHDL语言及其应用课程设计

VHDL语言及其应用课程设计一、前言VHDL(VHSIC Hardware Description Language)是一种用于描述数字系统、芯片、电路板和系统级应用的硬件描述语言。
作为一种硬件描述语言,VHDL使用定义来描述设计,供计算机程序执行和仿真。
VHDL被认为是数字电子工程领域中最强大、最灵活的硬件描述语言之一。
在本次课程设计中,我们将通过VHDL语言来设计一个数字系统,从而理解和熟悉VHDL语言的应用以及数字系统的设计方法。
二、开发环境在我们进行VHDL语言开发之前,需要准备以下开发环境:•Vivado:Vivado是一款由Xilinx公司开发的集成开发环境(IDE),可用于设计数字系统的FPGA、ASIC和Soc(System on Chip)。
•VHDL仿真器:VHDL仿真器用于测试和仿真我们设计的数字系统,常用的VHDL仿真器有ModelSim等。
三、课程设计在本次课程设计中,我们将设计一个简单的数字系统,该系统可以对两个8位数字进行求和运算,并输出计算结果。
具体的设计过程如下:1.设计输入首先,我们需要定义输入信号的格式。
在本次设计中,我们需要两个8位的输入信号,因此输入信号的格式如下:entity Input_Output isport(A_In, B_In :in std_logic_vector(7downto0);Sum :out std_logic_vector(7downto0));end Input_Output;在上述代码中,我们使用标准逻辑向量来定义输入信号的格式,其中A_In和B_In是两个8位输入信号,Sum是输出结果。
2.计算过程接下来,我们需要进行计算过程的设计。
在本次设计中,我们将对输入信号进行加法运算,因此我们需要定义一个计算模块来实现这一功能。
由于VHDL是一种面向过程的语言,因此我们需要使用过程来实现计算过程:architecture Behavioral of Input_Output issignal sum_temp :unsigned(7downto0);beginadd_proc:process(A_In,B_In)beginsum_temp <=unsigned(A_In) +unsigned(B_In);end process add_proc;Sum <=std_logic_vector(sum_temp);end Behavioral;在上述代码中,我们首先定义一个sum_temp信号来存储计算结果,接下来使用一个过程来实现加法运算。
VHDL与数字系统课程设计

课程设计报告实践课题:VHDL与数字系统课程设计学生:XXX指导老师:XXX、XXX系别:电子信息与电气工程系专业:电子科学与技术班级:XXX学号:XXX一、设计任务用VHDL设计一个简单的处理器,并完成相关的仿真测试。
.设计要求:图1是一个处理器的原理图,它包含了一定数量的寄存器、一个复用器、一个加法/减法器(Addsub),一个计数器和一个控制单元。
图1 简单处理器的电路图数据传输实现过程:16位数据从DIN输入到系统中,可以通过复用器分配给R0~R7和A,复用器也允许数据从一个寄存器传通过Bus送到另外一个寄存器。
加法和减法的实现过程:复用器先将一个数据通过总线放到寄存器A中,然后将另一个数据放到总线上,加法/减法器对这两个数据进行运算,运算结果存入寄存器G中,G中的数据又可根据要求通过复用器转存到其他寄存器中。
1)Rx ←[Ry] :将寄存器Ry中的内容复制到Rx;2)Mvi Rx,#D :将立即数存入寄存器Rx中去。
所有指令都按9位编码(取自DIN的高9位)存储在指令存储器IR中,编编码规则为IIIXXXYYY,III表示指令,XXX表示Rx寄存器,YYY表示Ry寄存器。
立即数#D是在mvi指令存储到IR中之后,通过16位DIN输入的。
有一些指令,如加法指令和减法指令,需要在总线上多次传输数据,因此需要多个时钟周期才能完成。
控制单元使用了一个两位计数器来区分这些指令执行的每一个阶段。
当Run信号置位时,处理器开始执行DIN输时间指令T0T1T2T3(mv):I0(mvi):I1(add):I2(sub):I3IR inIR inIR inIR inRY out,RX in,DoneDIN out,RX in,DoneRX out,A inRX out,A in--------RY out,G in,AddsubRY out,G in,Addsub--------G out,RX in,DoneG out,RX in,Done二、实现功能说明2.1 mv Rx,Ry实现的功能:将寄存器Rx的值赋给寄存器Ry(以mv R0, R5为例)(1 )计数器为“00”时,指令寄存器的置位控制信号输入端IRin=1有效,将DIN输入的数据的高9位锁存。
VHDL与数字系统设计

在这一次课外实践中,我觉得自己收获不少。实践过程中,我遇到了不少问题,但是通过对课本的理解和在网上资料的查找,以及不懈的努力,锻炼了我动手实验和独立思考的能力。这次实践使自己的课本知识可以通过实验进行深一步认识,使得理论与实际相结合,加深自己对课本的理解,同时也锻炼了自己的分析理解能力。其次,对QuartusⅡ软件的使用也有了一个学习的过程,我学会了如何使用QuartusⅡ来制作逻辑电路图,实现逻辑电路的仿真,并对逻辑电路进行时序分析。然而,由于时间的关系,这次实践肯定也有一些不足的地方。但是,最起码我做了一些成果出来,我体验到了这次实践的过程。相信以后我会以更加积极的态度去对待学习,认真对待每一个实验,珍惜每一分每一秒,学到最多的知识和方法,锻炼自己的能力,这个是我在实验上学到的最重要的东西,也使以后都将受益匪浅。
电子电气工程学院学生实验报告
电子信息科学与技术专业13级电信班S2组姓名学号
课程名VHDL与数字系统设计指导教师成绩
一、实验预习
实验序号
2
实验题目
全加器的设计
预习日期
要求:1.实验目的;2.实验原理:3.画出实验原理图;4.实验设备;5.预习内容(该实验项目应完成内容);6.记录表格设计
一、实验目的
编译通过后,进行引脚锁定,键2、键1输入八位加数,从数码管1、2上可看到相应的输入;键8可看到相应的输入,从数码管7上看到两位相加的和,从D8显示进位情况
四、实验操作注意事项
按照实验步骤完成原理图输入、编译,编译时要注意选择器件型号。在操作时认真学习实验的步骤,在完成软件上的操作后,连接FPGA实验开发板和PC机,检查硬件的好坏,连线是否正确,再接通电源,将软件导入。
1、熟悉利用QuartusⅡ的原理图输入方法设计简单组合电路
数字系统课程设计—VHDL

VHDL简单介绍
VHDL主要用于描述数字系统的结构,行为, 功能和接口. VHDL具有强大的行为描述能力,是系统设 计领域最佳的硬件描述语言.强大的行为 描述能力是避开具体的器件结构,从逻辑 行为上描述和设计大规模电子系统的重要 保证.
VHDL简单介绍
VHDL丰富的仿真语句和库函数,使得在任 何大系统的设计早期就能查验设计系统的 功能可行性,随时可对设计进行仿真模拟. VHDL对设计的描述具有相对独立性,设计 者可以不懂硬件的结构,也不必管理最终 设计实现的目标器件是什么,而进行独立 的设计.
LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL;
实体
实体定义设计的全部输入输出信号. 格式如下:
ENTITY 实体名 IS PORT (输入输出信号列表); END 实体名;
实体
一个计数器的实体部分
ENTITY count_m16 --实体名必须与设计文件同名 PORT( reset :IN std_logic; clk :IN std_logic; co :OUT std_logic; count :BUFFER std_logic_vector(3 DOWNTO 0));
END count_m16;
VHDL学习提示
了解HDL的可综合性问题:
HDL有两种用途:系统仿真和硬件实现.如果程序 只用于仿真,那么几乎所有的语法都可以使用.但 如果程序是用于硬件实现(例如:用于FPGA设 计),那么我们就必须保证程序“可综合”(程 序的功能可以用硬件电路实现). 不可综合的HDL语句在软件综合时将被忽略或者 报错. 应当牢记:“所有的HDL描述都可以用于仿真,但 不是所有的HDL描述都能用硬件实现.”
VHDL与数字系统设计概要

VHDL 与数字系统设计总学时:48 理论学时:16 实验学时:32 课程总学分:3适用专业:电子信息科学与技术一、实验的地位、目的1、实验的地位本课程是电子信息科学与技术本科专业的专业方向课《VHDL与数字系统设计》的配套实验课程。
2、实验的目的使学生通过对VHDL语言及EDA技术的学习和训练,获得现代硬件数字电路的软件化设计方法,了解并初步掌握当代国际数字技术设计领域的最新技术;激发并调动学生创造性思维能力,为学生在数字技术领域的进一步深入探索和进行创新奠定基础。
二、实验教材与指导书《VHDL与数字系统设显示桌面.scf计》实验讲义,杨守良,重庆文理学院物理学与信息工程系,2005.7三、考核方式及成绩评定1、考核方式:平时考查2、成绩评定:根据实验报告、实验态度、考勤、实际操作技能检查等,对学生进行评定考核成绩,实验成绩的比例按规定执行。
2 -五、综合性、设计性实验简介实验四译码器的设计(设计性)(一)实验目的1、掌握组合逻辑电路的设计方法。
2、掌握组合逻辑电路的静态测试方法。
3、初步掌握Max+PlusII 软件的基本操作与应用。
4、初步了解可编程器件的设计全过程。
(二)实验内容采用原理图输入法和VHDL编程来设计一个3-8译码器。
并在MAXPLUSII环境下实现仿真。
(三)主要仪器设备及器材PC 机、RC-EDA 实验开发系统、连接导线若干(四)基本实验技能及考核要点基本实验技能:熟悉3-8 译码器的逻辑真值表;基本门电路的使用考核要点:完成3-8 译码器的设计;并在MAX+PlusII 下进行仿真;在实验箱上验证设计。
实验五数字时钟设计(综合性)(一)实验目的1、多位计数器相连的设计方法。
2、掌握十进制,六进制,二十四进制计数器的设计方法。
3、继续巩固多位共阴极扫描显示数码管的驱动及编码。
4、掌握扬声器的驱动。
5、掌握CPLD 技术的层次化设计方法。
(二)实验内容设计的电子钟具有时、分、秒计数显示功能,以24 小时循环计时。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计报告实践课题:VHDL与数字系统课程设计学生:XXX指导老师:XXX、XXX系别:电子信息与电气工程系专业:电子科学与技术班级:XXX学号:XXX一、设计任务用VHDL设计一个简单的处理器,并完成相关的仿真测试。
.设计要求:图1是一个处理器的原理图,它包含了一定数量的寄存器、一个复用器、一个加法/减法器(Addsub),一个计数器和一个控制单元。
图1 简单处理器的电路图数据传输实现过程:16位数据从DIN输入到系统中,可以通过复用器分配给R0~R7和A,复用器也允许数据从一个寄存器传通过Bus送到另外一个寄存器。
加法和减法的实现过程:复用器先将一个数据通过总线放到寄存器A中,然后将另一个数据放到总线上,加法/减法器对这两个数据进行运算,运算结果存入寄存器G中,G中的数据又可根据要求通过复用器转存到其他寄存器中。
1)Rx ←[Ry] :将寄存器Ry中的内容复制到Rx;2)Mvi Rx,#D :将立即数存入寄存器Rx中去。
所有指令都按9位编码(取自DIN的高9位)存储在指令存储器IR中,编编码规则为IIIXXXYYY,III表示指令,XXX表示Rx寄存器,YYY表示Ry寄存器。
立即数#D是在mvi指令存储到IR中之后,通过16位DIN输入的。
有一些指令,如加法指令和减法指令,需要在总线上多次传输数据,因此需要多个时钟周期才能完成。
控制单元使用了一个两位计数器来区分这些指令执行的每一个阶段。
当Run信号置位时,处理器开始执行DIN输时间指令T0T1T2T3(mv):I0(mvi):I1(add):I2(sub):I3IR inIR inIR inIR inRY out,RX in,DoneDIN out,RX in,DoneRX out,A inRX out,A in--------RY out,G in,AddsubRY out,G in,Addsub--------G out,RX in,DoneG out,RX in,Done二、实现功能说明2.1 mv Rx,Ry实现的功能:将寄存器Rx的值赋给寄存器Ry(以mv R0, R5为例)(1 )计数器为“00”时,指令寄存器的置位控制信号输入端IRin=1有效,将DIN输入的数据的高9位锁存。
置位的控制信号如图3加粗黑线所示。
图3(2)计数器为“01”时,首先控制单元根据设计器为“00”时输入的指令,向复用器发出选通控制信号,复用器根据该控制信号让R5的值输出到总线上,然后控制单元控制寄存器R0将总线上的值锁存,完成整个寄存器对寄存器的赋值过程。
置位的控制信号和数据流如图4加粗黑线所示。
图42.2 mvi Rx,#D实现的功能:将的立即数#D赋给寄存器Rx(以mv R0, #D为例)(1)计数器为“00”时,指令寄存器的置位控制信号输入端IRin=1有效,将DIN输入的数据的高9位锁存。
置位的控制信号如图5加粗黑线所示。
图5(2)计数器为“01”时,首先控制单元根据设计器为“00”时输入的指令,向复用器发出选通控制信号,复用器根据该控制信号让DIN的值输出到总线上,然后控制单元控制寄存器R0将总线上的值锁存,完成整个立即数对寄存器的赋值过程。
置位的控制信号和数据流如图6加粗黑线所示。
图62.3 add Rx,Ry和sub Rx,Ry实现的功能:将寄存器Ry的值加上/减去寄存器Rx的值并赋给寄存器Rx(以add/sub R0,R1为例)。
(1)计数器为“00”时,指令寄存器的置位控制信号输入端IRin=1有效,将DIN输入的数据的高9位锁存。
置位的控制信号如图7加粗黑线所示。
图7(2)计数器为“01”时,首先控制单元根据设计器为“00”时输入的指令,向复用器发出选通控制信号,复用器根据该控制信号让R0的值输出到总线上,然后控制单元控制寄存器A将总线上的值锁存。
置位的控制信号和数据流如图8加粗黑线所示。
图8(3)计数器为“10”时,首先控制单元根据设计器为“00”时输入的指令,向复用器发出选通控制信号,复用器根据该控制信号让R1的值输出到总线上,然后控制单元控制加法/减法器addsub将寄存器A的值和总线上的值相加/相减并输出,接着寄存器G将加法/减法器addsub的计算结果锁存。
置位的控制信号和数据流如图9加粗黑线所示。
图9(4)计数器为“11”时,首先控制单元向复用器发出选通控制信号,复用器根据该控制信号让寄存器G的值输出到总线上,寄存器R0将总线上的值进行锁存,完成整个寄存器与对寄存器见加减法的运算过程。
置位的控制信号和数据流如图10加粗黑线所示。
图10三、单元模块设计说明4.1寄存器Registe寄存器R0~R7、寄存器A或寄存器G :用于数据的存储。
当时钟输入clk的上升沿到来且rin=1时,将数据输入端rxin[15..0]的数据锁存到寄存器中并从数据输出端rxout[15..0]输出;当rin=0时,输出端保持原来的值不变。
clkrinrxin[15..0]rxout[15..0]registeinst1寄存器Registe的VHDL代码:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY registe isport(clk:in std_logic;rin:in std_logic;rxin:in std_logic_vector(15 downto 0);rxout:out std_logic_vector(15 downto 0)); end entity registe;architecture one of registe isbeginprocess(clk)beginif clk'event and clk='1' thenif rin='1' then rxout<=rxin;end if;end if;end process;end one;4.2指令寄存器IR指令寄存器IR用于对输入的16为指令进行处理,取其高9位。
当时钟输入clk的上升沿到来且rin=1时,取数据输入端rxin[15..0]的高9位将其锁存到寄存器中并从数据输出端rxout[8..0]输出;当rin=0时,输出端保持原来的值不变。
指令寄存器IR的VHDL代码:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY IR isport(clk:in std_logic;rin:in std_logic;rxin:in std_logic_vector(15 downto 0);rxout:out std_logic_vector(8 downto 0));end entity IR;architecture one of IR isbeginprocess(clk)beginif clk'event and clk='1' thenif rin='1' then rxout<=rxin(15 downto 7);end if;end if;end process;end one;4.3加/减法器addsub加/减法器addsub用于处理两个输入的数据datain2[15..0] 和datain1[15..0],当控制端Addsub=1时,两个数据输入端datain2[15..0] 和datain1[15..0]相加并从数据输出端dataout[15..0]输出;当控制端Addsub=0时,数据输入端datain2[15..0] 减去datain1[15..0],结果从数据输出端dataout[15..0]输出。
加/减法器addsub的VHDL代码:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;use ieee.std_logic_unsigned.all;ENTITY addsub isport( ain:in std_logic_vector(15 downto 0);bin:in std_logic_vector(15 downto 0);adsub:in bit;about:out std_logic_vector(15 downto 0));end entity addsub;architecture one of addsub issignal a,b:std_logic_vector(15 downto 0);beginprocess(adsub,ain,bin)beginif adsub='0' then about<=ain+bin;elsif adsub='1' then about<=ain-bin;end if;end process;end one;4.4 计数器counter计数器counter用于产生控制单元的输入脉冲,对控制单元的工作时序进行控制。
当clear=0时(清零端clear 无效),时钟输入clk每来一个上升沿,输出count[1..0]加1,所以输出为00——>01——>10——>11——>00不断循环;当clear=1时(清零端clear有效),对输出Q[1..0]同步清零,与时钟有关。
计数器counter的VHDL代码:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity counter isport(clk:in std_logic;clear:in std_logic;count:out std_logic_vector(1 downto 0));end counter;architecture one of counter issignal c:std_logic_vector(1 downto 0);beginprocess(clk,clear)beginif clk'event and clk='1' thenif(clear='1')then c<="00";else c<=c+1;end if;end if;end process;count<=c;end one;4.5 复用器multiplexers复用器根据控制单元的控制信号将指定的输入数据输出到总线上。
来自控制单元的控制信号为R0out~R7out、Gout、DINout,输入数据位来自寄存器R0~R7、寄存器A、数据输入端DIN,当控制信号的某一位为1时,将其对应的输入数据输出到总线上。