蜂鸟E200(1)

RTL代码风格

  1. 使用标准DFF模块例化生成寄存器
  2. assign语法代替if-else和case
    if-else和case语法的两大缺点:不能传播不定态,会产生优先级的选择电路而非并行选择电路,从而不利于时序和面积。
  3. 带有reset的寄存器面积和时序会稍微差一些,因此在数据通路上使用不带reset的寄存器,只在控制电路上使用带reset的寄存器
  4. 信号名定义注意使用英语缩写
  5. Clock和Reset信号禁止被用于任何其他的逻辑功能,只可以接入DFF作为时钟信号和复位信号

E200模块层次划分

Alt

  1. e203_cpu_top中仅例化两个模块,分别为e203_cpu和e203_srams
    • e203_cpu为处理器核的所有逻辑部分
    • e203_srams为处理器核的所有SRAM部分
      将SRAM和逻辑部分在层次上分开是为了方便ASIC实现。
  2. e203_cpu模块例化的clk_ctrl用于控制处理器各个主要组建的自动时钟门控,参见低功耗设计的要诀。
  3. e203_cpu模块例化的irq_sync是用于外界的异步中断信号进行同步。
  4. e203_cpu模块例化的reset_ctrl用于将外界的异步reset信号进行同步,使之变成“异步置位同步释放”的复位信号。
  5. e203_cpu模块例化的itcm_ctrl和dtcm_ctrl用于控制itcm和dtcmm的访问
  6. e203_cpu模块例化的core是处理器核的主体部分,主要功能有:取指令单元ifu,执行单元exu,存储器访问单元lsu,总线接口单元biu。
    Alt
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值