这套题来自于网络收集(主要是CSDN),许多CSDN资源里的题都是这套,看过我前一篇博文的应该能发现有共同题,由于都是图形,很多懒得贴了,大致领会一下:P(因为发现上一篇被野鸡网站秒偷了,加个关注可见好了)
考试时间:2021年9月22日。
1.QPSK调制是把(2)个连续二进制bit映射成一个复数值的数据符号.
2.寄存器等价优化:综合工具等价寄存器优化会跨越代码一级模块。
3.整型变量-10在内存中存储的值是:1111_1111_1111_1111_1111_1111_1111_0110.
4.电位是指电路中某点与(参考点)之间的电压 //参考点可能选为地/0电位。
5.驻波比SWR=1的端口,反射系数为(0)
驻波比的计算公式为SWR=R/r=(1+K)/(1-K),其中反射系数K=(R-r)/(R+r) ,K为负值时表明相位相反,R和r分别是输出阻抗和输入阻抗。当两个阻抗数值一样时,即达到完全匹配,反射系数K等于0,驻波比为1。这是一种理想的状况,实际上总存在反射,所以驻波比总是大于1的。驻波比是检验馈线传输效率的依据,电压驻波比要小于1.5,在工作频点的电压驻波比最好小于1.2。电压驻波比过大,将缩短通信距离,反射功率将返回发射机功放部分,容易烧坏功放管,影响通信系统正常工作。
6.逻辑低功耗设计中,对IO管脚的处理错误的是(器件的所有输出管脚都需要进行电流强度的约束)//一般约束指定信号的管脚和电平,再有input_delay的设置就可以了。
见:FPGA设计中两种IO约束:管脚约束,延迟约束-电子发烧友网
7.最利于减小关键路径延迟的表达式:(a+b)+(c+d)//类似于加法树的理念
8.关于奇偶校验的描述正确的是:奇偶校验使用1bit校验位。
9.以下哪些不是校验计算方法:(HASH)//BIP/CRC/FEC等是校验计算方法,HASH是思想。
10.关于竞争-冒险描述错误的是:(竞争和冒险总是伴随出现的)//有竞争不一定冒险,只有信号到达先后影响了电路瞬时输出造成错误(毛刺),才称为有冒险。
11.关于同步设计,说法错误的是(为保证逻辑设计可靠,必须保证整个电路中只有一个时钟域,同时只使用同一个时钟沿)//这里的同步设计是指整个电路系统大部分的地方是同步的,而并非是说每个地方都得是同步的,系统里还是可以存在多时钟域的。
异步电路
1. 电路的核心逻辑是组合电路,比如异步的FIFO/RAM读写信号、地址译码信号等电路;
2. 电路的输出不依赖于某一个时钟,也就说不是由时钟信号驱动触发器产生的;
3. 异步电路非常容易产生毛刺,且易受环境的影响,不利于器件的移植;
同步电路
1. 电路的核心逻辑是由各种各样的触发器实现的,所以比较容易使用寄存器的异步复位/置位端,以使整个电路有一个确定的初始状态;
2. 整个电路是由时钟沿驱动的;
3. 以触发器为主体的同步时序电路可以很好的避免毛刺的影响,使设计更可靠;
4. 同步时序电路利于器件移植,因为环境以及器件工艺对同步电路的影响几乎可以不考虑
5. 同步电路可以容易的组织流水线,提高芯片的运行速率
6. 同步电路可以很好的利用先进的设计工具,如静态时序分析工具等,为设计者提供了最大便利条件,便于电路错误分析,加快设计进度。
同步时序设计规则
1. 尽可能在整个设计中只使用一个主时钟,同时只适用同一个时钟沿,主时钟走FPGA 全局网络,因为FPGA器件中的全局时钟资源是专门为降低时钟的抖动和扭曲而设计的,在Xilinx FPGA当中,采用专门的时钟管理模块(CMT)来管理全局时钟资源,有效的提高了时钟的质量;
2. 在FPGA设计中,所有输入、输出信号均应通过寄存器寄存,寄存器接口当作异步接口考虑;
3. 当全部电路不能用同步电路设计的时候,也就是说需要多个时钟来实现的时候,原则上将电路分成多个局部同步电路来设计,各局部电路接口之间采用异步电路来考虑;
4. 电路设计中需要考虑时序余量,当设计无法满足理论最高频率的时候,芯片就会无法可靠工作
5. 电路中所有寄存器、状态机在单板上电复位时候应处于一个已知的状态;
12.仿真时,在模块实例语句中,悬空端口可通过端口表达式表示为空白来指定为悬空端口,模块的输入端悬空值为(z)
13.以下说法正确的是(采样用的时钟信号采样沿不能出现回勾、台阶)//从打拍的亚稳态角度出发,很显然时钟信号不能bug,不然就没救了吧w
这里见: https://www.bilibili.com/read/cv10493013
14.以下不属于FPGA硬件特征的描述是:(可预测的布线延时)//这合理吗?时序报表里面却是有net delay的,可能这个"预测"和常人的理解不太一样吧。
见:FPGA的原理与结构_去哪啊到二仙桥的博客-CSDN博客_fpga原理和结构
15.计算机输入设备不包括(耳机)
16.Xilinx的功耗估算工具是(Xpower Estimator)
17.SV中获取静态数组a和动态数组b的元素个数的方法是($size(a),b.size)
18.Verilog中的标识符可以是任意一组字母,数字和下划线的组合,但标识符的第一个字符不能是(数字)//就我所学的为数不多的语言里,还没见过标识符第一个字符能是数字的...
19.下面哪种接口不是串行信号?(DDR)//DDR是并行信号,有位宽的(例如8bit);是串行信号的:USB(差分信号),SATA(差分信号),1000Base-X
20.有符号数105的原码(01101001),反码(01101001),补码(01101001)//正数,三个相同。如果是负数,原码(11101001),反码(10010110),补码(10010111)
21.非周期连续信号被理想冲激取样后,取样信号的频谱Fs(jw)是(连续(非周期)频谱)//时域离散-频域周期,时域周期-频域离散。反之,时域连续->频域非周期,时域非周期->频域连续。建立了一个“周期->离散,离散->周期”的链条,其中左值被当作时域,而右值被当作频域。
见:信号与系统——四对时域频域对应关系_captain飞虎大队的博客-CSDN博客_时域周期离散对应频域
22.关于同步设计描述错误的是(同步设计的功耗相对异步设计更低)//就算有clock-gating,时钟树本身总是要大体翻转的,远比异步那些操作数不隔离的情况要功耗大。
23.一个反相器转换时间tLH=7ns,tHL=13ns,最大信号频率为(50MHz)//1/(7ns+13ns)
24.以下叙述中不正确的是(一个函数内的复合语句在本函数范围内有效)//只在复合语句(函数中成对大括号构成的代码块)中有效,代码块外不可见。
见:c语言学习回顾4--- 函数_要努力丫!的博客-CSDN博客_函数中的形参是在栈中保存
25.对6'd53进行移位操作,先左移1位,再右移3位,得到(5)//11_0101<<1 = 10101_0,10_1010>>3 = 000_101,即5.
26.关于同步设计,下列说法错误的是(为保证逻辑设计可靠,必须保证整个电路中只有一个时钟域,同时只使用同一个时钟沿)//和11题是一样的。
27.用2k*8的sram芯片组成16k*16的存储器,需要SRAM芯片(16)片,片内地址和产生片选信号的地址分别为(11)位和(4)位 //两片一组构成16bit宽度,八组构成16k深度。片内2k深度为11位,片选因总共16片所以为4位。
28.关于时钟方案设计错误的是(驱动DDIO的时钟,如果采用内部锁相环驱动,输入时钟占空比不必过分要求)
见:原理图checklist_Risehuxyc的博客-CSDN博客_原理图checklist
对于逻辑芯片的输入时钟,如果使用内部锁相环,必须保证时钟的输入频率、占空比、抖动、输出频率满足锁相环要求。锁相环电路尽量按照芯片提供的参考电路设计。
29.-3.75用16bit补码表示(1bit符号位,7bit整数位,8bit小数位)为()//原码3.75=1000_0011.1100_0000,反码=1111_1100.0011_1111,补码=1111_1100.0100_0000.实际上,先写出8bit,然后左边补1,右边补0也是可以的。
30.如图所示代码分析p=(15),q=(24)

//i++后增,++j先增,从而p=5+5+5;q=8+8+8,即15,24
31.VHDL可以具有属性的项目包括如下哪些:(子类型、结构体、元件、函数)//有就选。
VHDL中具有属性的项目有:类型、子类型、过程、函数、信号、变量、常量、实体、结构体、配置、程序包、元件和语句标号
32.采用同步设计的好处(BCD)

//最形象的理解,异步设计用锁存器的时候,同步设计要用DFF,两个D-latch才构成一个DFF,同步怎么会比异步省面积呢?
在专用芯片(ASIC)的设计过程中,同步设计一般会比异步设计占用更多的资源。但是在FPGA设计过程中并不是这样。
33.下面哪些语言可以用来开发或验证FPGA逻辑模块(Verilog,System Verilog,C,C++)//HLS、SystemC都是C++,而C++是C写的,成了(?
34.关于异步设计的危害,下面说法正确的是(ABC)

35.SV中,下面哪些数据类型是四态(BCD)//reg、logic、time

36.关于异步FIFO中full,empty信号的描述正确的是(AC)//full由写时钟产生,即上升沿与写时钟有关,而当读指针移动后,full出现下降沿,与读时钟有关;empty由读时钟产生。

37.在一个8bit的存储单元中,能够存储的最小的有符号整数是(D)//0~255或-128~127

38. FPGA内使用相同时钟沿的同步数字电路,最高频率和哪些因素有关?(BC)

39. 要把10M时钟域下一个模10计数器的值,传递到异步100M时钟域下。以下说法正确的有(AD)//这个转格雷码没说打两拍,差点上当...

40. 关于跨时钟域处理,以下描述正确的是(ABCD)

//如果同步化是指打两拍,握手以后的多bit信号同步确实不需要同步化。
我正在尝试解析一个CSV文件并使用SQL命令自动为其创建一个表。CSV中的第一行给出了列标题。但我需要推断每个列的类型。Ruby中是否有任何函数可以找到每个字段中内容的类型。例如,CSV行:"12012","Test","1233.22","12:21:22","10/10/2009"应该产生像这样的类型['integer','string','float','time','date']谢谢! 最佳答案 require'time'defto_something(str)if(num=Integer(str)rescueFloat(s
目录一.加解密算法数字签名对称加密DES(DataEncryptionStandard)3DES(TripleDES)AES(AdvancedEncryptionStandard)RSA加密法DSA(DigitalSignatureAlgorithm)ECC(EllipticCurvesCryptography)非对称加密签名与加密过程非对称加密的应用对称加密与非对称加密的结合二.数字证书图解一.加解密算法加密简单而言就是通过一种算法将明文信息转换成密文信息,信息的的接收方能够通过密钥对密文信息进行解密获得明文信息的过程。根据加解密的密钥是否相同,算法可以分为对称加密、非对称加密、对称加密和非
华为OD机试题本篇题目:明明的随机数题目输入描述输出描述:示例1输入输出说明代码编写思路最近更新的博客华为od2023|什么是华为od,od薪资待遇,od机试题清单华为OD机试真题大全,用Python解华为机试题|机试宝典【华为OD机试】全流程解析+经验分享,题型分享,防作弊指南华为o
system-view进入系统视图quit退到系统视图sysname交换机命名vlan20创建vlan(进入vlan20)displayvlan显示vlanundovlan20删除vlan20displayvlan20显示vlan里的端口20Interfacee1/0/24进入端口24portlink-typeaccessvlan20把当前端口放入vlan20undoporte1/0/10删除当前VLAN端口10displaycurrent-configuration显示当前配置02配置交换机支持TELNETinterfacevlan1进入VLAN1ipaddress192.168.3.100
在Ruby中,是否有一种简单的方法可以将n维数组中的每个元素乘以一个数字?这样:[1,2,3,4,5].multiplied_by2==[2,4,6,8,10]和[[1,2,3],[1,2,3]].multiplied_by2==[[2,4,6],[2,4,6]]?(很明显,我编写了multiplied_by函数以区别于*,它似乎连接了数组的多个副本,不幸的是这不是我需要的)。谢谢! 最佳答案 它的长格式等价物是:[1,2,3,4,5].collect{|n|n*2}其实并没有那么复杂。你总是可以使你的multiply_by方法:c
我正在使用Ruby解决一些ProjectEuler问题,特别是这里我要讨论的问题25(Fibonacci数列中包含1000位数字的第一项的索引是多少?)。起初,我使用的是Ruby2.2.3,我将问题编码为:number=3a=1b=2whileb.to_s.length但后来我发现2.4.2版本有一个名为digits的方法,这正是我需要的。我转换为代码:whileb.digits.length当我比较这两种方法时,digits慢得多。时间./025/problem025.rb0.13s用户0.02s系统80%cpu0.190总计./025/problem025.rb2.19s用户0.0
我正在构建一个小部件来显示奥运会的奖牌数。我有一个“国家”对象的集合,其中每个对象都有一个“名称”属性,以及奖牌计数的“金”、“银”、“铜”。列表应该排序:1.首先是奖牌总数2.如果奖牌相同,按类型分割(金>银>铜,即2金>1金+1银)3.如果奖牌和类型相同,则按字母顺序子排序我正在用ruby做这件事,但我想语言并不重要。我确实找到了一个解决方案,但如果感觉必须有更优雅的方法来实现它。这是我做的:使用加权奖牌总数创建一个虚拟属性。因此,如果他们有2个金牌和1个银牌,加权总数将为“3.020100”。1金1银1铜为“3.010101”由于我们希望将奖牌数排序为最高的,因此列表按降序排
我想为名字验证编写一个正则表达式。正则表达式应包括所有字母(拉丁/法语/德语字符等)。但是我想从中排除数字并允许-。所以基本上它是\w(减)数(加)-。请帮忙。 最佳答案 ^[\p{L}-]+$\p{L}匹配anykindofletterfromanylanguage. 关于ruby-on-rails-rails中的正则表达式匹配[\w]和"-"但不匹配数字,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.c
在我的应用程序中,我有一个文本字段,用户可以在其中输入类似这样的内容"1,2,3,4"存储到数据库中。现在,当我想使用内部数字时,我有两个选择:"1,2,3,4".split(',')或string.scan(/\d+/)do|x|a两种方式我都得到一个像这样的数组["1","2","3","4"]然后我可以通过在每个数字上调用to_i来使用这些数字。有没有更好的方法可以转换"1,2,3"to[1,2,3]andnot["1","2","3"] 最佳答案 str.split(",").map{|i|i.to_i}但是这个想法对你来说
我有一个随机大小的散列,它可能有类似"100"的值,我想将其转换为整数。我知道我可以使用value.to_iifvalue.to_i.to_s==value来做到这一点,但我不确定我将如何在我的散列中递归地做到这一点,考虑到一个值可以是一个字符串,或一个数组(哈希或字符串),或另一个哈希。 最佳答案 这是一个非常简单的递归实现(尽管必须同时处理数组和散列会增加一些技巧)。deffixnumifyobjifobj.respond_to?:to_i#IfwecancastittoaFixnum,doit.obj.to_ielsifobj