第00练 - 预备实验(04-03)

  1. 对二进制转格雷码(bin2gray)进行算法建模并进行测试:

    1. 位宽:DATA_WD = 2~32。

    2. 功能:包含数据导出。

    3. 语言:不做限制。

    4. 环境:不做限制。

    5. 附加要求:采用 恰当的 策略进行测试。

  2. 对二进制转格雷码(bin2gray)进行硬件描述并进行验证:

    1. 输入:DATA_WD比特的dat_b_i。

    2. 输出:DATA_WD比特的dat_g_o。

    3. 时序:纯组合逻辑。

    4. 语言:Verilog。

    5. 环境:不做限制。

    6. 要求:使用算法模型导出的数据进行验证对比。

  3. 对格雷码转二进制(gray2bin)进行硬件描述并进行验证:

    1. 输入:DATA_WD比特的dat_g_i。

    2. 输出:DATA_WD比特的dat_b_o。

    3. 时序:纯组合逻辑。

    4. 语言:Verilog。

    5. 环境:不做限制。

    6. 附加要求: 使用算法模型导出的数据而是直接进行验证对比。(提示:可利用bin2gray)

  4. 请于第6周实验课前提交实验报告至作业邮箱,应包含以下内容

    1. 标题(预备实验:格雷码转二进制)

    2. 实验日期

    3. 学生信息

    4. 实验目的

    5. 实验原理

    6. 实验环境

    7. 代码及分析

    8. 仿真及分析

    9. 实验总结

    • 注意简洁性,不要长篇大论,讲出关键内容就可以!!

    • 注意简洁性,不要长篇大论,讲出关键内容就可以!!

    • 注意简洁性,不要长篇大论,讲出关键内容就可以!!


  • 可参考 pj_example_simple.tar 进行构建,但需注意:
    该环境中的dut是时序电路,而本实验的dut是组合电路。
  • 二进制转格雷码:
    𝐺_𝑛 = 𝐵_𝑛
    𝐺_(𝑛−1) = 𝑚𝑜𝑑(𝐵_(𝑛−1)+𝐵_𝑛, 2)
    𝐺_(𝑛−2) = 𝑚𝑜𝑑(𝐵_(𝑛−2)+𝐵_(𝑛−1), 2)
    𝐺_0 = 𝑚𝑜𝑑(𝐵_0+𝐵_1, 2)
  • 格雷码转二进制:
    𝐺_𝑛 = 𝐵_𝑛
    𝐺_(𝑛−1) = 𝑚𝑜𝑑(𝐵_(𝑛−1)+𝐵_𝑛, 2)
    𝐺_(𝑛−2) = 𝑚𝑜𝑑(𝐵_(𝑛−2)+𝐵_(𝑛−1), 2)
    𝐺_0 = 𝑚𝑜𝑑(𝐵_0+𝐵_1, 2)