同步电路与异步电路

同步逻辑与异步逻辑,同步电路与异步电路?

时钟间有固定因果关系(来源于同个时钟源)时同步逻辑,若没有则是一步逻辑;

同步电路通过时钟脉冲使其子系统同步运作(寄存器,由时钟沿的控制);异步电路不能使用时钟脉冲做同步,通常运用握手等进行同步;

什么事同步复位,什么是异步复位?

同步复位:仅在有效的时钟沿时对触发器复位,该复位信号经过组合逻辑馈送到触发器的D输入端;

always@(posedge clk)

  if(!rst_n)

  else

异步复位:无论时钟沿是否到来,只要复位信号有效就对系统进行复位;

always@(posedge clk or negedge rst_n)

  if(!rst_n)

  else

阻塞赋值与非阻塞赋值的区别?

阻塞赋值(组合逻辑):赋值是实时的,计算完马上赋值给左边,然后再执行下一句,串行执行 

//一个寄存器 输出即使b也是c
always
@(posedge clk)   begin     b = a;     c = b;   end

非阻塞赋值(时序逻辑):赋值不会立刻生效,上一句和下一句非阻塞赋值并行执行。

//移位寄存器
always
@(posedge clk)   begin     b <= a;     c <= b;   end

静态、动态时序模拟的区别,优缺点?

时序路径:从一个寄存器的输出到另一个寄存器的输入。

静态时序分析(STA)通过穷举方式分析每条路径的延时,对每条路径tsu和th的时序余量分析;

  确定芯片最高工作频率

  检查时序约束是否满足

  分析时钟质量

动态时序分析(后仿),通过模拟设计在期间实际工作时的功能和延时情况;耗时,比较慢

FPGA和ASIC区别?

FPGA现场可编程门阵列,为了通用;AISC为专门功能设计的集成电路。

验证方法学的发展,验证岗位要UVM,System C,VMM

芯片设计流程

从阅读设计规范/设计协议开始,确定模块划分,接口定义、编写RTL,将各个IP集成SOC、功能验证(确定验证计划、编写testbench和testcase、单独验证、集成验证)、RTL预综合与分析、逻辑综合(DC生成门级网表给到后端)、后仿,时序分析,DFT(可测试设计 design for test)、布局布线PD,版图确定

门控时钟单元结构,如何避免毛刺?门控时钟是为了节省功耗

使使能信号在时钟有效沿到无效沿之间保持恒定,不发生变化。详见硬件架构的艺术——时钟与复位

用verilog实现一个7进制技术其,复位值可配置(复位不一定到0,可以再0-6之间任意数值)

module counter_7(
  
output [2:0]  out,
  
input      clk, rst_n,
  input [2:0]  pre_rst_num
);
    reg [2:0]  cnt;
always @(posedge clk or negedge rst_n)
begin
  if(!rst)
    cnt <= pre_rst_num;
  else if(cnt==3'b110)
    cnt <= 0;
  else
    cnt <= cnt+1;
end
assign out = cnt;
endmodule
    
    

如何进行跨时钟域的设计?

不同时钟域信号间通信需要同步处理,防止亚稳态的传输

  单bit信号:两级同步器

  多比特信号:fifo,双口ram,握手信号

异步fifo为什么用格雷码?

读写时钟不同频

读写地址需要同步,存在读写地址跨时钟域的,由于路径延时不一致,可能在输入的两个数据中间进行采样

格雷码相邻地址仅变化一bit,避免毛刺,多比特传输则可能出现re...问题

如果要做低功耗设计,有哪些方法?

系统层面,使用多时钟域,多电压域划分,系统架构优化(降低数据存储层次)

设计层面:降低电源电压,门控时钟clock gating,多power域设计(不同模块对电压的要求不同,可以根据需求做分割),优化时钟树,逻辑优化,减少无谓的翻转。

TPU和GPU之间的有什么区别,为什么GPU的功耗高,TPU有什么架构,工作原理

猜你喜欢

转载自www.cnblogs.com/lizhiqing/p/12332863.html