本文汇总了一些平时自己刷题时易错及不会做的题,以便自己随时复习回顾。
-
reg signed [0:4] b, b=8'h8f
,赋值后b等于?
答案: 5‘h0F
对于长位宽赋值给短位宽的情况,无论左或右操作数是有符号或者无符号数,都是直接截断高位。 -
一个D触发器,其数据Tsu=2ns,Tcq=3ns,Thd=1ns, 则此触发器最高工作频率为?(Tsu为时钟建立时间,Thd为保存数据,Tcq为输出时钟的延迟)
答案: 应该为200MHz
Tmin =Tcq+Tsu+Tgate-Tskew=2+3=5ns, 即200MHz -
独热码和工进制码的优缺点比较:
答案:二进制码、格雷码使用最少的触发器,但是消耗较多的组合逻辑(用于译码);独热码则正好相反,因为状态比较时仅需要比较一位,从而在一定程度上简化了译码逻辑。虽然在表示同样的状态时,独热码占用较多的位,也就是消耗较多的触发器,但这些额外的触发器占用面积可与译码电路省下来的面积相抵消。在CPLD更多的提供组合逻辑,而 FPGA 提供更多的触发器资源,所以在 CPLD 中更多的使用二进制、格雷编码,在FPGA 中更多使用独热编码。另一方面,对于小型设计gray-code和binary-code编码更有效。对于大型设计,one-hot编码更高效。 -
关于综合的说法,错误的是?
A. 相同的RTL代码,每次综合出来网表不一样
B. 综合网表可以用于EDA功能仿真
C. casez是不可综合的
D. 时序逻辑always语句中,if-else如果else分支缺少,会综合成latch
答案: D
只有在组合逻辑中,缺少else分支才会综合成latch,因为寄存器必须记住原来的值。 -
下列关于综合的说法哪项是不正确的()
A.综合(Synthesis)简单地说就是将 HDL 代码转化为门级网表的过程
B.综合由 Translation 和 Mapping 两个步骤组成
C. Mapping 把用 GTECH 库元件构成的电路映射到某一特定厂家的工艺库上
D. Translation 是指把 HDL 语言描述的电路转化为用 GTECH 库元件组成的逻辑电路的
过程
答案:C,综合过程包括mapping,translation和optimization -
使用相同时钟沿的同步数字电路,以下因素和最高工作频率无关的是: ( )
A.触发器之间最长的组合逻辑
B.触发器的建立/保持时间
C.时钟低电平持续时间
D.逻辑块间互连布线长度
答案:C -
有如下代码
class C1;
rand int m;
constraint c1_ cons { m<=10;}
endclass
class C2 extends C1;
constraint c1_cons { m>=10; }
endclass
以代码最终实现的约束效果是()
A.m>=10
B.m<=10
C.m=10
D.解约束失败
答案:A SV 中的约束和类的继承,同名约束覆盖 -
.电路设计中需要关注 PPA,分别指( )
A.功耗
B.性能
C.面积
D.成本
答案:ABC -
下面有关 Cache 的说法哪一个是不正确的?
A. 设置 Cache 的理论基础,是程序访问的局部生原理
B. Cache 与主存统一编址,Cache 的地址空间属于主存的一部分
C. 设置 Cache 的目的,是解决 CPU 和主存之间的速度匹配问题
D. Cache 的功能匀由硬件实现,对程序员是透明的
答案:B
A:使用 Cache 改善系统性能的依据是程序的局部性原理
B:cache 的地址与内存地址是两码事,不统一编址,也没有从属关系
C:Cache 是介于 CPU 和主存之间的小容量存储器,存取速度比主存快,接近 CPU。它能高速地向 CPU 提供指令和数据,提高程序的执行速度。Cache 技术是为了解决 CPU 和主存之间速度不匹配而采用的一项重要技术。
D:Cache 是主存的缓冲存储器,由高速的 SRAM 组成,所有控制逻辑全部由硬件实现,对程序员而言是透明的。随着半导体器件集成度的不断提高,当前有些CPU 已内置 Cache,并且出现了两级以上的多级 Cache 系统。Cache 通常采用相联存储器。Cache 又分为 L1Cache(一级缓存)和 L2Cache(二级缓存),L1Cache 主要是集成在 CPU 内部,而 L2Cache 集成在主板上或是CPU上。 -
异步电路都不需要 STA 进行约束检查
A.是
B.否
解释:A STA 都是针对同步电路的 -
对12.918做无损定点化,需要的最小位宽是多少位,位宽选择11位时的是化误差是多少。
A. 12位,0.0118
B. 13位,0.0039
C. 12位,0.0039
D. 13位,0.0118
答案:C,12位,误差0.0039
12.918,定点量化时对整数部分和小数部分分别量化。
(1)整数部分12 ,最少使用4位量化,4-bit表示范围0~15;
(2)小数部分0.918 ,假设12.918整体使用12位量化,整数已使用4-bit,则小数部分还能使用8-bit量化,能够表示2的8次方共计256个刻度,每个刻度的间隔是1/256 = 0.00390625,这个值也就是量化精度。
小数0.918需要多少个刻度来表示呢? 0.918/(1/256) = 0.918 x 256 = 235.008,四舍五入取整,则使用235个刻度来表示,误差是0.008个刻度,误差大小是0.008 x (1/256) = 0.00003125。
量化误差小于量化精度的一半,认为是“无损量化”。由于量化后误差0.00003125肯定是小于精度0.00390625的一半,所以这个误差小到可以认为是无损量化。
当使用11位量化时,同理:
(1)整数部分12,最少仍需要4位量化,4-bit表示范围0~15;
(2)小数0.918,只能使用剩下的7-bit量化,能够表示2的7次方共计128个刻度,每个刻度的间隔是1/128。
小数0.918需要多少个刻度来表示呢?
0.918/(1/128) = 0.918 x 128 = 117.504,四舍五入取整,则使用118个刻度来表示,误差是-0.496个刻度,误差大小是-0.496 x (1/128) = -0.003875,保留四位小数并取正数,0.0039。
- 哪种运算符可以处理无关类型之间的转换()
dynamic_cast (expression)
reinterpret_cast (expression)
static_cast (expression)
const_cast (expression)
reinterpret_cast 作用:是用来处理无关类型之间的转换;
-
求-97.64的补码?
该题考查了符号数且带小数的补码计算方法:
先算-97.64*2^n的值,即-6398935 ,得到该数的原码为1110_0001_1010_0011_1101_0111,然后通过取反加1得到补码即可,注意:符号数的符号位应该保持不变。 -
当一个乘法器需要10个cycle才能完成计算任务,对其需要设置multicycle,setup会设置为10,hold设置为()
答:9,在多周期设置中,Setup的周期是X,设置Hold周期为X-1。multicycle path:当FF之间的组合逻辑delay大于一个时钟cycle时,这条combinational path能被称为multicycle path;多数的design中,一个N multicycle setup应该与一个N-1 multicycle hold相对应,以保证hold check维持在同一时钟,否则极容易slack violated。
15、以下工艺器件中,电阻值的最大的是()
A, AA(有源区)
B,Contact(接触孔)
C, Poly(栅极)
D,VIA(通孔)
答:C,栅极接触电阻大
后续会继续更新·············