有vivado设计一个一位十进制数据(8421BCD)的加法器。选择 8 个拨动开关,分成两 个 4 位组,分别表示两个 8421BCD 的十进制输入数据。相加结果的低四位 8421BCD 数据用一位七段数码管显示,进位位则使用一个 LED 灯表示。LED 灯亮,表示进位为 1;LED 灯灭,表示进位为 0。
时间: 2023-06-10 14:08:24 浏览: 213
首先,我们需要设计一个加法器的电路。加法器的输入是两个 8421BCD 的十进制数据,输出是一个 8421BCD 的十进制数据和一个进位位。
我们可以使用 Vivado 自带的 IP Catalog 中的 Binary Counter IP 核来实现 8421BCD 的加法器。Binary Counter IP 核可以设置输入数据的位宽和计数范围,输出数据的位宽和计数范围。
在本题中,我们需要输入两个 8421BCD 的十进制数据,每个数据占据 4 个位,因此输入数据的位宽为 8。输出数据为一个 8421BCD 的十进制数据和一个进位位,因此输出数据的位宽为 5。
接下来,我们需要使用拨动开关来输入数据。我们可以在 Vivado 的 Block Design 中添加一个 IP 核,使用 Switches IP 核来实现拨动开关的输入。
在 Block Design 中,我们需要将 Binary Counter IP 核的输入端口与 Switches IP 核的输出端口相连,将 Binary Counter IP 核的输出端口与七段数码管和 LED 灯的输入端口相连。
最后,我们需要将 Block Design 中的所有 IP 核综合到一个 Vivado 工程中,并将工程烧录到 FPGA 开发板上。在开发板上拨动开关输入数据,七段数码管会显示相加结果的低四位 8421BCD 数据,LED 灯会显示进位位。
阅读全文