EDA技术应用复习题Word格式.docx
- 文档编号:16690427
- 上传时间:2022-11-25
- 格式:DOCX
- 页数:36
- 大小:111.11KB
EDA技术应用复习题Word格式.docx
《EDA技术应用复习题Word格式.docx》由会员分享,可在线阅读,更多相关《EDA技术应用复习题Word格式.docx(36页珍藏版)》请在冰豆网上搜索。
2.单片机应用系统的研究开发步骤中策划阶段包括哪些内容?
✓项目需求分析。
✓概要设计。
✓划分硬件和软件的设计内容。
✓尽量采纳可借鉴的成熟技术。
3.简述单片机应用系统的研究开发步骤中实施阶段之硬件设计的作用及内容。
随着单片机嵌入式系统设计技术的飞速发展,元器件集成功能越来越强大,设计工作重心也越来越向软件设计方面转移。
硬件设计的特点是设计任务前重后轻。
单片机应用系统的设计可划分为两部分:
一部分是与单片机直接接口的电路芯片相关数字电路的设计,如存储器和并行接口的扩展,定时系统、中断系统扩展,一般的外部设备的接口,甚至于A/D、D/A芯片的接口。
另一部分是与模拟电路相关的电路设计,包括信号整形、变换、隔离和选用传感器,输出通道中的隔离和驱动以及执行元件的选用。
工作内容:
✓1)模块分解。
策划阶段给出的方案只是个概念方案,在这一步要把它转化为电子产品设计的概念描述的模块,并且要一层层分解下去,直到熟悉的典型电路。
尽可能选用符合单片机用法的典型电路。
当系统扩展的各类接口芯片较多时,要充分考虑到总线驱动能力。
当负载超过允许范围时,为了保证系统可靠工作,必须加总线驱动器。
✓2)选择元器件。
尽可能采用新技术,选用新的元件及芯片。
✓3)设计电原理图及说明。
✓4)设计PCB及说明。
✓5)设计分级调试、测试方法。
设计中要注意:
✓1)抗干扰设计是硬件设计的重要内容,如看门狗电路、去耦滤波、通道隔离、合理的印制板布线等。
✓2)所有设计工作都要落实到文字记录上。
3.简述单片机应用系统的研究开发步骤中实施阶段之软件设计的作用及内容。
软件设计的特点:
贯穿整个产品研发过程,有占主导地位的趋势。
在进行软件设计工作时,选择一款合用的编程开发环境软件,对提高工作效率特别是团队协作开发效率很重要。
✓模块分解。
策划阶段给出的方案是面向用户功能的概念方案,在这一步要把它转化为软件设计常用的的概念描述的模块,并且要采用自顶向下的程序设计方法,一层层分解下去,直到最基本的功能模块、子程序(函数)。
✓依据对模块的分解结果及硬件设计的元器件方案,进行数据结构规划和资源划分定义。
结果一定要落实到文字记录中。
✓充分利用流程图这个工具。
用分层流程图,可以完满前面的工作。
✓一般的程序都可划分为监控程序、功能模块子程序(函数)、中断服务程序这几种类型。
参考现成的模板可大大简化设计的难度。
监控程序中的初始化部分需要根据数据结构规划和资源划分定义来设计。
✓到了这一步,软件编程工作其实已经完成了九成,剩下就是把流程图代码化,不少人把这一步错称为“编程序”。
难度不大但很繁琐,只要认真有耐心,坚持到汇编(编译)通过就看到曙光了。
✓拟定调试、试验、验收方案。
这一步不光是方案,还得搭建测试环境,主要内容还是编程序,可以当做一个新项目再做一遍策划与实施,有时还得考虑硬件(包括信号源、测量仪器、电源等)。
注意:
✓外部设备和外部事件尽量采用中断方式与CPU联络,这样,既便于系统模块化,也可提高程序效率。
✓目前已有一些实用子程序发表,程序设计时可适当使用,其中包括运行子程序和控制算法程序等。
本书附录中就收录了一些常用子程序。
见附录五。
✓系统的软件设计应充分考虑到软件抗干扰措施。
✓一切设计都要落实到文字记录上。
文档的作用怎么强调都不过分。
3.简述单片机应用系统的研究开发步骤中验证阶段的作用及内容。
验证阶段包括的内容比较多也比较杂:
软硬件调试,局部和整理的测试大纲及实施,整体测试成功后EPROM固化脱机运行及测试,最后别忘了整理所有的设计检验文档记录。
毕竟所谓“设计”,指的是文档而不是样品(包括实物和软件演示效果),样品只是证明文档正确的一种手段。
工作内容如下:
✓软硬件联调,包括局部联调和整体联调。
主要目标是尽量使设计结果能够按预想的目标运行。
联调离不了开发机,有时候反复很大,甚至推倒重来都不罕见。
联调的每一步目标在软件设计时就设定好了。
一个很重要的问题是软件硬件的抗干扰、可靠性测试。
要考虑到尽可能多的意外情况。
✓脱机调试。
调试通过的程序,最终要脱机运行,即将仿真ROM中运行的程序固化到EPROM脱机运行。
但在开发装置上运行正常的程序,固化后脱机运行并不一定同样正常。
若脱机运行有问题,需分析原因,如是否总线驱动功能不够,或是对接口芯片操作的时间不匹配等。
经修改的程序需再次写入。
这是真实环境下的软硬件联调。
✓验证设计。
以策划阶段的项目需求分析、硬件设计的测试设计文件、软件设计的测试设计文件和搭建的测试环境为依据,编写功能测试大纲、性能测试大纲,并实施验收检验。
✓项目验收时最重要的是完整的文档记录。
大致包括:
项目管理类、硬件设计类、软件设计类、验收检验类等。
4.简述程序流程图的设计步骤。
✓第一步,先进行最原始的规划,画出第一张程序流程图,将总任务分解成若干个子任务,安排好它们的关系,暂不管各个子任务如何完成。
✓第二步,将第一张流程图的各个子任务进行细化。
决定每个子任务采用哪种算法,而暂不考虑如何为数据指针、计数器、中间结果配置存放单元等具体问题。
在第二张流程图中,主要任务是设计算法,第二张程序流程图已能说明该程序的设计方法和思路。
第二张流程图以算法为重点,算法的合理性和效率决定了程序的质量。
✓第三步,画第三张流程图,用它来指导编程。
第三张流程图以资源分配为策划重点,要为每一个参数、中间结果、各种指针、计数器分配工作单元,定义数据类型和数据结构。
在进行这一步工作时,要注意上下左右的关系,本模块的入口参数和出口参数的格式要和全局定义一致,本程序要调用低级子程序时,要和低级子程序发生参数传递,必须协调好它们之间的数据格式。
本模块中各个环节之间传递中间结果时,其格式也要协调好。
在定点数系统中,中间结果存放格式要仔细设计,避免发生溢出和精度损失。
一般中间结果要比原始数据范围大,精度高,才能使最终结果可靠。
4.简述程序流程图绘制原则及其作用
✓正确的流程图画法是先粗后细、一步一个脚印,只考虑逻辑结构和算法,不考虑或少考虑具体指令。
这样画流程图就可以集中精力考虑程序的结构,从根本上保证程序的合理性和可靠性,剩下来的任务只是进行指令代换,这时只要消除语法错误,一般就能顺利编出源程序,并且很少大返工。
✓画好程序流程图后,就可以比较方便地进行编程了。
从流程图到程序的过程发生了两个变化:
形式上从二维图形变成了一维的程序,内容上从功能描述变成了具体的指令实现。
4.简述程序流程图与程序设计的关系
✓画程序流程图是程序设计的决定成败的关键部分。
画程序流程图的过程就是进行程序的逻辑设计过程,这中间的任何错误或忽视将导致程序出错或可靠性下降。
真正的程序设计过程是流程图设计,而上机编程只是将设计好的程序流程图转换成程序设计语言。
✓程序流程图与相对应的源程序是等效的,但给人的感受是不同的。
源程序是一维的指令流,而流程图是二维的平面图形。
在表达逻辑思维策略时,二维图形比一维指令流要直观明了得多,因而更有利于查错和修改。
多花一点时间来设计程序流程图,就可以节约大量的源程序编辑调试时间。
✓程序流程图不是画出来给别人看的,是为编程者自己用的。
正确的做法是先画程序流程图,再开始编程,而不是编完程序后再补画程序流程图。
5.项目开发流程包括哪些内容?
✓需求分析
✓概要设计
✓详细设计
✓制造设计
✓中间试验
5.项目需求分析是做什么的?
✓解决“做什么?
”“做到什么程度?
”问题。
✓对项目进行功能描述,要能够满足用户使用要求。
✓对项目设定性能指标,要能够满足可测性要求。
✓所有的需求分析结果应该落实到文字记录上。
5.项目概要设计是做什么的?
✓概要设计,又叫总体设计、模块设计、层次设计,解决“怎么做?
”“如何克服关键难题?
✓以对项目需求分析为依据,提出解决方案的设想,摸清关键技术及其难度,明确技术主攻问题。
✓针对主攻问题开展调研工作,查找中外有关资料,确定初步方案,包括模块功能、信息流向、输入输出的描述说明。
✓仿真是进行方案选择时有力的决策支持工具。
6.项目管理的三要素是什么?
✓范围:
项目的目标和任务,以及完成这些目标和任务所需的工作
✓时间:
反映在项目日程中的完成项目所需的时间
✓费用:
即项目的预算,它取决于资源的成本。
这些资源包括完成任务所需的人员、设备和材料。
6.项目周期有哪几个阶段?
✓定义项目目标
✓制定项目计划
✓发布项目计划
✓跟踪项目进度并调整计划
✓完成项目并存档
6.项目管理的主要内容是什么?
✓可行性研究
✓立项
✓中间进度管理、资源调配
✓结项
7.研发管理内容有哪些?
✓项目管理
✓研发团队管理
✓资源管理
✓文档管理
✓进度管理
✓外加工管理
✓协调
7.研发团队管理的主要内容有哪些?
✓考核
✓考勤
✓培训
7.资源管理的主要内容有哪些?
✓设备
✓物资
✓人员
✓经费
8.外加工管理的主要内容有哪些?
✓元器件加工
✓特殊零件加工
✓部件委托设计加工
✓加工合同
8.项目研发管理中的协调包括哪些内容?
✓内部协调:
占用资源,人力调配
✓外部协调:
汇报进度,宣传成绩,
✓商业协调:
用户关系,新项目申报
✓办公室协调:
日用杂事,人事财务相关,培训
9.Project主要有哪些功能?
✓共享项目信息
✓编制和组织信息
✓跟踪项目
✓方案的优化度分析
✓信息计算
✓检测和维护
9.请解释专业术语:
任务;
周期性任务;
资源;
成本。
✓任务:
指具有开始日期和完成日期的具体工作,它是日程的组成单元。
项目通常是由相互关联的任务构成的
✓周期性任务:
指在项目过程中重复发生的任务,如每周的总结性会议就可以定义为周期性任务
✓资源:
是指完成任务所需的人员、设备和原材料等
✓成本:
完成任何一项工作都需要付出一定的代价,或是付出人工,或是消耗材料,这都存在一个成本费用的问题
里程碑;
工期。
✓工期:
是指完成某项任务所需活动工作时间的总长度,通常是从任务开始日期到完成日期的工作时间量
✓里程碑:
是一个工期为零,用于标识日程的重要事项,它可以作为一个参考点,用来监视项目的进度
10.试述优先调度型监控程序特点,并画出流程图。
能根据各作业的优先级高低进行调度。
优先级高的作业先运行,所有高优先的作业都运行完成后才能运行低优先级作业。
10.试述特征编码型监控程序特点,并画出流程图。
包含位特征码和字节特征码两种。
位特征码型:
能根据各作业的优先级高低进行调度。
各标志判断的先后次序隐含了优先级。
字节型特征编码型:
每次检测一个字节是否相同,相同则执行。
在依次检测的过程中也隐含了优先级。
10.试述键码分析型监控程序特点,并画出流程图。
各作业间既没有先后顺序,也没有优先关系,作业的调度完全按操作者的输入或内部参数的变化,(假设各作业具有相同的优先级)。
监控程序根据当前按键输入和内部状态的值决定执行哪个作业。
在一键多义的系统中,还可以把按键和状态组合起来构成两级状态编码监控程序。
11.简述Proteus中画电原理图的流程
✓建工程;
✓找元件;
✓布局连线;
✓设置元件与标号属性;
✓存盘。
11.简述Proteus中程序设计及调试的流程
✓编辑程序;
✓汇编排错;
✓装载程序;
✓单步调试;
✓全速仿真;
✓功能性能测试。
11.简述Proteus的功能
Proteus是嵌入式系统设计与仿真平台,可以实现:
✓绘制电原理图
✓数字电路、模拟电路仿真
✓微处理器系统的软件仿真
✓虚拟信号源及虚拟仪器做系统协同仿真
✓PCB设计。
主要由两部分构成:
ProteusISIS,用于电原理图设计和仿真;
ProteusARES则用于PCB设计。
该软件能模拟51单片机,AVR单片机,PIC单片机,以及部分ARM芯片。
还提供了30多种元器件库,数千种元器件;
能仿真模拟和数字电路,比如时序分析、频响分析、傅立叶分析、噪声分析等。
支持的外围器件也很多包括:
A/D、LCD、LED数码管、温度、时钟芯片、A/D转换器等。
12.51系列单片机有几种存储空间?
请简述之。
参见下面资料
12.51系列单片机有几种寻址方式?
12.51系列单片机的内部数据空间上如何寻址?
5.1.2寻址方式
51系列单片机有三种地址空间:
内部数据空间、外部数据空间、程序空间,其指令系统的寻址方式也可分成三类:
在内部数据空间寻址、在外部数据空间寻址、在程序空间寻址。
1.在内部数据空间寻址
1)直接寻址方式
直接寻址方式是指,在指令中以地址形式直接给出操作数地址。
例如:
指令MOV31H,30H执行的操作是将内部RAM中地址为30H的单元内容传送到地址为31H的单元中,其源操作数30H、目的操作数31H就是存放数据的单元地址,因此该指令的源操作数和目的操作数都是直接寻址的。
又例如:
指令MOVA,30H执行的操作是将内部RAM中地址为30H的单元内容传送到累加器ACC中,其源操作数30H是存放数据的单元地址,因此该指令的源操作数是直接寻址的。
如果已经定义了符号代表某个地址,例如:
若ADDREQU30H(这句话的意思是符号ADDR在程序里代表30H这个数),则指令MOVA,ADDR执行的操作是将内部RAM中地址为ADDR的单元内容传送到累加器ACC中,其源操作数ADDR(也就是30H)是存放数据的单元地址,因此该指令的源操作数是直接寻址的,它等价于指令MOVA,30H。
用这种寻址方式可以访问内部数据存储器三种地址空间:
(1)内部数据存储器的128个字节单元。
示例:
MOV50H,A;
指令中目的操作数的寻址方式为直接寻址
(2)位地址空间。
MOVC,00H;
指令中源操作数的寻址方式为直接寻址
(3)特殊功能寄存器地址空间。
MOVACC,P1;
2)寄存器寻址方式
寄存器寻址是指,在指令中直接以寄存器R0~R7、累加器A、DPTR以及位累加器Cy的名字表示操作数的地址。
即寄存器的内容作为操作数。
可以采用寄存器寻址的。
设程序状态寄存器PSW的RS1RS0=10(即选中第三组工作寄存器,对应地址为10H~17H),若累加器A的内容为50H,则执行MOVR0,A指令后,内部RAM10H单元(也就是当前选定的第三组工作寄存器中的R0)的值就变为50H。
寄存器寻址的空间只是直接寻址空间的一个子集,为什么还要这种寻址方式?
因为寄存器R0~R7、累加器A、DPTR以及位累加器Cy在绝大多数指令中都会作为操作数出现,并且在单片机程序运行时这些指令使用得非常频繁,因此专门为使用这些寄存器的操作设计了专用指令,其机器码比通用的直接寻址的机器码占用字节少,运行速度快,这就大大提高了程序运行质量;
代价是指令个数翻了几番。
3)寄存器间接寻址方式
寄存器间接寻址是指,指令操作数部分所指定的寄存器中存放的是操作数的地址。
在内部数据空间寻址时,可以作为寄存器间接寻址的寄存器有工作寄存器R0、R1、堆栈指针SP。
在指令中用在寄存器前加“@”,以示与直接寻址方式区别。
指令MOVA,@R1执行的操作是将R1的内容作为内部RAM的地址,再将该地址单元中的内容取出来送到累加器A中。
在下面几种情况下,可以使用寄存器间接寻址方式:
1)访问内部数据存储区的00H~7FH单元
使用当前工作寄存器区的R0、R1作地址指针来间接寻址。
2)堆栈操作指令PUSH和POP
使用堆栈指针SP进行间接寻址。
MOVR1,#30H
MOVA,@R1;
源操作数为间接寻址,访问内部RAM30H单元
2.在外部数据空间寻址
在外部数据空间寻址只有寄存器间接寻址这一种方式,其含义与在内部数据空间的寄存器间接寻址完全一样:
指令操作数部分所指定的寄存器中存放的是操作数的地址。
在外部数据空间中,可以作为寄存器间接寻址的寄存器有工作寄存器R0、R1、地址寄存器DPTR,在指令中用在寄存器前加“@”以示与直接寻址区别。
有专门的指令关键字区别寄存器间接寻址究竟是在外部还是在内部数据空间:
MOVX、MOV分别表示外部、内部数据空间的操作。
指令MOVXA,@R1执行的操作是将R1的内容作为外部数据空间(RAM)的地址,再将该地址单元中的内容取出来送到累加器A中。
由于R0是一个字节,@R0只能寻址到00H~0FFH这256个单元的地址。
实际上,外部地址总线有16位,专门设计了16位的地址寄存器DPTR,用@DPTR来间接寻址,就可以覆盖到整个64K外部数据空间0000H~0FFFFH单元。
指令MOVXA,@DPTR执行的操作是将DPTR的内容作为外部数据空间的地址,再将该地址单元中的内容取出来送到累加器A中。
3.在程序空间寻址
1)直接寻址方式
这种寻址方式用于长调用或转移、绝对调用或转移指令。
调用或转移操作的操作数就是目的地址。
设程序中已有标号SS_8,代表着程序空间的地址2054H,指令LJMPSS_8执行后,程序计数器PC的值变为2054H,程序会接着运行标号SS_8处的指令。
2)相对寻址方式
这种寻址方式只用于相对或条件转移指令中。
相对寻址本质上是间接寻址,只是操作数的地址需要计算才能得到。
计算方法:
以程序计数器PC的当前值作为基地址,与指令中给定的相对偏移量rel进行相加,把得到的和作为程序的转移地址。
所谓相对转移,是指程序转移目标地址由相对于该指令当前地址的偏移量来决定。
一般将相对转移指令所在的地址称为源地址,转移后的地址称为目标地址,则有:
目标地址=源地址+转移指令字节数+偏移量
在汇编语言的相对转移指令中,偏移量通常以目标地址的标号形式出现。
例如指令:
JZLOOP;
操作数为相对寻址
LOOP就是程序中某条指令的标号。
此时,计算偏移量的公式为:
偏移量=目标地址-(源地址+2)
如果偏移量为负数,那么这条指令执行后程序将转到该指令的前面(低地址方向);
如果偏移量为正数,那么将转到该指令的后面(高地址方向)。
在51系列单片机的指令系统中,偏移量的取值范围是+127~-128。
假定有如下程序:
ORG2000H
2000H8030HSJMPSTART;
转入START开始的程序段
…
2032H0F8H
START:
MOVR0,A
…
END
程序执行到SJMP指令时,转入标号为START的指令处继续执行。
指令SJMPSTART的机器码是8030H(16进制),所在地址是2000H,本指令占用2个字节,第一个字节80H是操作码,第二个字节30H是操作数,也就是偏移量。
详细指令执行情况如下:
地址偏移量rel=目标地址-源地址-2
=2032H-2000H-2=30H
指令SJMPSTART的机器码80H30H存放在2000H处,当执行到该指令时,先从2000H和2001H单元取出指令,PC自动变为2002H;
再把PC的内容与操作数30H相加,形成目标地址2032H,再送回PC,使得程序跳转到2032H单元继续执行。
3)变址寻址方式
这其实是又一种变化形式的间接寻址。
操作数的地址也需要计算:
以程序计数器PC或数据指针DPTR作为基地址寄存器,以累加器A作为变址寄存器,把两者的内容相加形成16位的操作数的地址。
这种寻址方式专用于访问程序存储器中的常数表,不能访问数据存储器。
指令中的操作符为MOVC,区别于MOVX和MOV。
指令MOVCA,@A+DPTR执行的操作是将累加器A和基址寄存器DPTR的内容相加,相加结果作为操作数存放的地址,再将此地址中的操作数取出来送到累加器A中。
设累加器A=18H,DPTR=0600H,外部ROM(0618H)=8CH,则指令MOVCA,@A+DPTR的执行结果是累加器A的内容为8CH。
4)立即寻址方式
立即寻址方式的意思是,指令操作数部分给出的就是参与运算的操作数本身,它可以是8位二进制数或16位二进制数。
即操作数是以指令字节的形式存放于程序存储器中的。
在51系列单片机的指令系统中是用“#”加在数值前的形式来表示立即数的,如果立即数的最高位为A~F英文字符时,该字符前要加“0”,以使之区别于字符串。
指令MOVA,#0F3H执行以后,累加器A中存放的数据为0F3H。
4.寻址方式小结
本质上只有两种寻址方式:
直接寻址、间接寻址。
假定我们要给张三打电话,拨张三的电话号码就可以找到他;
如果不知道张三的电话号码,我们就找李四询问张三的电话号码再拨给他。
前一种情况就是直接寻址,而后一种是间接寻址。
直接寻址操作起来直截了当,没有什么花样;
间接寻址则不然,反正是找人询问张三的电话号
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- EDA 技术 应用 复习题