zoukankan      html  css  js  c++  java
  • 硬件工程师-面试笔记0304

    1、建立时间和保持时间

     

    如图所示:

    建立时间是指触发器的时钟信号上升沿到来以前,数据稳定不变的时间。输入信号应提前时钟上升沿(如上升沿有效)T时间到达芯片,这个T就是建立时间Setup time.如不满足Setup time,这个数据就不能被这一时钟打入触发器,只有在下一个时钟上升沿,数据才能被打入触发器;

    保持时间是指触发器的时钟信号上升沿到来以后,数据也必须保持一段时间,数据保持不变以便能够稳定读取(信号在器件内部通过连线和逻辑单元时,都 有一定的延时。延时的大小与连线的长短和逻辑单元的数目有关,同时还受器件的制造工艺、工作电压、温度等条件的影响。信号的高低电平转换也需要一 定的过渡时间。)。如果 hold time 不够,数据便不能被有效读取并转换为输出。如果数据信号在时钟边沿触发前后持续的时间分别超过建立时间和保持时间,那么这部分超过的分量分别称为建立时间裕量和保持时间裕量。

    2、有些信号特别是时钟信号,一般在输出端串一电阻,其目的是什么?

    高速信号线中才考虑使用这样的电阻,在低频情况下,一般是直接连接。这个电阻有两个作用:

    第一是阻抗匹配。因为信号源的阻抗很低,跟信号线之间阻抗不匹配,串上一个电阻后,可以改善匹配情况,以减少反射,避免震荡等;

    第二是可以减少信号边沿的陡峭程度,从而减少高频噪声以及过冲等,因为串联的电阻,跟信号线的分布电容以及负载的输入电容等形成一个RC电路,这要就会降低信号边沿的陡峭程度,大家知道,如果一个信号的边沿十分陡峭,含有大量的高频成分,将会辐射干扰,另外,也容易产生过冲。

    详述(阻抗匹配)
        阻抗匹配是指信号源或者传输线跟负载之间的一种合适的搭配方式阻抗匹配分为低频和高频两种情况讨论。
        我们先从直流电压源驱动一个负载入手,由于实际的电压源,总是有内阻的(请参看输出阻抗一问),我们可以把一个实际电压源,等效成一个理想的电压源跟一个电阻r串联的模型,假设负载电阻为R,电源电动势为U,内阻为r,那么我们可以计算出流过电阻R的电流为:I=U/(R+r),可以看出,负载电阻R越小,则输出电流越大负载R上的电压为:Uo=IR=U/[1+(r/R)],可以看出,负载电阻R越大,则输出电压Uo越高再来计算一下电阻R消耗的功率为:

        P=I2×R=[U/(R+r)]2×R=U2×R/(R2+2R×r+r2)
         =U2×R/[(R-r)2+4×R×r]
         =U2/{[(R-r)2/R]+4×r}
        对于一个给定的信号源,其内阻r是固定的,而负载电阻R则是由我们来选择的注意式中[(R-r)2/R],当R=r时,[(R-r)2/R]可取得最小值0,这时负载电阻R上可获得最大输出功率Pmax=U2/(4×;r)即,当负载电阻跟信号源内阻相等时,负载可获得最大输出功率,这就是我们常说的阻抗匹配之一,

        对于纯电阻电路,此结论同样适用于低频电路及高频电路,当交流电路中含有容性或感性阻抗时,结论有所改变,就是需要信号源与负载阻抗的实部相等,虚部互为相反数,这叫做共扼匹配;

        在低频电路中,我们一般不考虑传输线的匹配问题,只考虑信号源跟负载之间的情况,因为低频信号的波长相对于传输线来说很长,传输线可以看成是“短线”,反射可以不考虑(可以这么理解:因为线短,即使反射回来,跟原信号还是一样的)。

        从以上分析我们可以得出结论:如果我们需要输出电流大,则选择小的负载R;如果我们需要输出电压大,则选择大的负载R;如果我们需要输出功率最大,则选择跟信号源内阻匹配的电阻R,有时阻抗不匹配还有另外一层意思,例如一些仪器输出端是在特定的负载条件下设计的,如果负载条件改变了,则可能达不到原来的性能,这时我们也会叫做阻抗失配;

        在高频电路中,我们还必须考虑反射的问题当信号的频率很高时,则信号的波长就很短,当波长短得跟传输线长度可以比拟时,反射信号叠加在原信号上将会改变原信号的形状,如果传输线的特征阻抗跟负载阻抗不相等(即不匹配)时,在负载端就会产生反射,为什么阻抗不匹配时会产生反射,以及特征阻抗的求解方法,牵涉到二阶偏微分方程的求解,在这里我们不细说了,有兴趣的可参看电磁场与微波方面书籍中的传输线理论传输线的特征阻抗(也叫做特性阻抗)是由传输线的结构以及材料决定的,而与传输线的长度,以及信号的幅度、频率等均无关

        例如,常用的闭路电视同轴电缆特性阻抗为75Ω,而一些射频设备上则常用特征阻抗为50Ω的同轴电缆另外还有一种常见的传输线是特性阻抗为300Ω的扁平平行线,这在农村使用的电视天线架上比较常见,用来做八木天线的馈线因为电视机的射频输入端输入阻抗为75Ω,所以300Ω的馈线将与其不能匹配实际中是如何解决这个问题的呢?不知道大家有没有留意到,电视机的附件中,有一个300Ω到75Ω的阻抗转换器(一个塑料封装的,一端有一个圆形的插头的那个东东,大概有两个大拇指那么大)它里面其实就是一个传输线变压器,将300Ω的阻抗,变换成75Ω的,这样就可以匹配起来了这里需要强调一点的是,特性阻抗跟我们通常理解的电阻不是一个概念,它与传输线的长度无关,也不能通过使用欧姆表来测量为了不产生反射,负载阻抗跟传输线的特征阻抗应该相等,这就是传输线的阻抗匹配如果是电路板上的高速信号线与负载阻抗不匹配时,会产生震荡,辐射干扰等;

        当阻抗不匹配时,有哪些办法让它匹配呢?第一,可以考虑使用变压器来做阻抗转换,就像上面所说的电视机中的那个例子那样;第二,可以考虑使用串联/并联电容或电感的办法,这在调试射频电路时常使用;第三,可以考虑使用串联/并联电阻的办法一些驱动器的阻抗比较低,可以串联一个合适的电阻来跟传输线匹配,例如高速信号线,有时会串联一个几十欧的电阻。而一些接收器的输入阻抗则比较高,可以使用并联电阻的方法,来跟传输线匹配,例如,485总线接收器,常在数据线终端并联120欧的匹配电阻;

        浅谈四层板和33欧电阻
        选用四层板不仅是电源和地的问题,高速数字电路对走线的阻抗有要求,二层板不好控制阻抗33欧电阻一般加在驱动器端,也是起阻抗匹配作用的;布线时要先布数据地址线,和需要保证的高速线在高频的时候,PCB板上的走线都要看成传输线传输线有其特征阻抗,学过传输线理论的都知道,当传输线上某处出现阻抗突变(不匹配)时,信号通过就会发生反射,反射对原信号造成干扰,严重时就会影响电路的正常工作采用四层板时,通常外层走信号线,中间两层分别为电源和地平面,这样一方面隔离了两个信号层,更重要的是外层的走线与它们所靠近的平面形成称为“微带”(microstrip)的传输线,它的阻抗比较固定,而且可以计算对于两层板就比较难以做到,这样这种传输线阻抗主要于走线的宽度、到参考平面的距离、敷铜的厚度以及介电材料的特性有关,有许多现成的公式和程序可供计算。

       33欧电阻通常串连放在驱动的一端(其实不一定33欧,从几欧到五、六十欧都有,视电路具体情况) ,其作用是与发送器的输出阻抗串连后与走线的阻抗匹配,使反射回来(假设解收端阻抗没有匹配)的信号不会再次反射回去(吸收掉),这样接收端的信号就不会受到影响接收端也可以作匹配,例如采用电阻并联,但在数字系统比较少用,因为比较麻烦,而且很多时候是一发多收,如地址总线,不如源端匹配易做;

    这里所说的高频,不一定是时钟频率很高的电路,是不是高频不止看频率,更重要是看信号的上升下降时间通常可以用上升(或下降)时间估计电路的频率,一般取上升时间倒数的一半,比如如果上升时间是1ns,那么它的倒数是1000MHz,也就是说在设计电路是要按500MHz的频带来考虑有时候要故意减慢边缘时间,许多高速IC其驱动器的输出斜率是可调的。

    3、根据逻辑功能不同,数字逻辑电路分为哪几类?各类的功能特点是什么?

    组合逻辑电路,时序逻辑电路?

    4、FPGA代表什么意思,FPGA与CPLD的主要结构差别是什么?

    FPGA:现场可编程门阵列。区别:

    1、CPLD更适合完成各种算法和组合逻辑,FPGA更适合于完成时序逻辑。换句话说,FPGA更适合于触发器丰富的结构,而CPLD更适合于触发器有限而乘积项丰富的结构。
    2、CPLD的连续式布线结构决定了它的时序延迟是均匀的和可预测的,而FPGA的分段式布线结构决定了其延迟的不可预测性。
    3、在编程上FPGA比CPLD具有更大的灵活性。CPLD通过修改具有固定内连电路的逻辑功能来编程,FPGA主要通过改变内部连线的布线来编程;FPGA可在逻辑门下编程,而CPLD是在逻辑块下编程。
    4、FPGA的集成度比CPLD高,具有更复杂的布线结构和逻辑实现。
    5、CPLD比FPGA使用起来更方便。CPLD的编程采用EEPROM或FASTFLASH技术,无需外部存储器芯片,使用简单。而FPGA的编程信息需存放在外部存储器上,使用方法复杂。
    6、CPLD的速度比FPGA快,并且具有较大的时间可预测性。这是由于FPGA是门级编程,并且CLB之间采用分布式互联,而CPLD是逻辑块级编程,并且其逻辑块之间的互联是集总式的。
    7、在编程方式上,CPLD主要是基于EEPROM或FLASH存储器编程,编程次数可达1万次,优点是系统断电时编程信息也不丢失。CPLD又可分为在编程器上编程和在系统编程两类。FPGA大部分是基于SRAM编程,编程信息在系统断电时丢失,每次上电时,需从器件外部将编程数据重新写入SRAM中。其优点是可以编程任意次,可在工作中快速编程,从而实现板级和系统级的动态配置。

    5、在一个高速CPU(例如ARM)的系统中,包括CPU、SDRAM、FLASH和其他外设,CPU程序应放在SDRAM还是FLASH运行?为什么?

    首先说明一下,SDRAM是用来运行程序的,FLASH是用来存储程序代码的(SDRAM掉电丢失,FLASH则不会),每次上电的时候,都需要将FLASH中的程序代码放到SDRAM中,然后再运行,SDRAM速度也快。

    6、PAL和NTSC彩色电视制的分辨率分别是多少行(扫描线)/帧?

    PAL电视标准,每秒25帧,电视扫描线为625线,奇场在前,偶场在后,标准的数字化PAL电视标准分辨率为720*576, 24比特的色彩位深,画面的宽高比为4:3, PAL电视标准用于中国、欧洲等国家和地区,PAL制电视的供电频率为50Hz,场频为每秒50场,帧频为每秒25帧,扫描线为625行,其中,帧正程575行,帧逆程50行。

     

    NTSC标准,每秒29.97帧(简化为30帧),电视扫描线525线,偶场在前,奇场在后,标准的数字化NTSC电视标准分辨率为720*480像素, 24比特的色彩位深,画面的宽高比为4:3或16:9。NTSC电视标准用于美、日等国家和地区。

    7、在硬件设计中要用好DSP,你觉得应考虑哪些因素?

    1、时钟问题,不同频率用时钟芯片,单一频率用晶振

    2、未用IO口,上拉或下拉为固定的电平。

    3、不同电压系统混接,74LVC245

    8、运放平衡电阻的作用

    运放输入端所接电阻要平衡,目的是使集成运放两输入端的对地直流电阻相等,运放的偏置电流不会产生附加的失调电压。 但有些电路对失调电压要求并不高,例如交流音频放大器。有些运放偏置电流很小,即使输入端电阻不平衡也不会对失调电压产生什么影响,这些电路就可以不要求 输入端电阻平衡。

  • 相关阅读:
    单向链表
    野指针和空指针
    指针数组和数组指针,指针函数和函数指针
    python开发笔记-变长字典Series的使用
    python开发笔记-DataFrame的使用
    python开发笔记-如何做数据准备
    python开发笔记-通过xml快捷获取数据
    destoon系统结构大全
    Python应用之-修改通讯录
    Python开发应用-操作excel
  • 原文地址:https://www.cnblogs.com/imapla/p/3581041.html
Copyright © 2011-2022 走看看