Verilog学习笔记(6)Modelsim仿真_相邻16点累加

本文详细介绍了使用Verilog设计时序逻辑,实现相邻16点的累加功能。在每个采样时钟syn_in的上升沿,8位带符号的原码数据_in被累加,当计数达到15时,累加结果通过data_out以补码形式输出,并伴随同步脉冲syn_out。文中包含测试平台设计及仿真结果的展示,重点讨论了补码计算、上升沿检测和同步脉冲生成等关键点。
摘要由CSDN通过智能技术生成

 1. 时序逻辑代码设计和仿真

1.1 相邻点累加_相邻16点相加输出

data_in为采样信号

syn_in为采样时钟

data_in在syn_in上升沿变化,syn_in的频率比系统时钟频率低很多,对相邻16点相加得到data_out,并由syn_out同步,syn_out为一个系统时钟周期宽度的脉冲;

输入信号data_in为8位带符号位的原码,输出data_out位补码。

 期望波形:

 syn_in_n1为采样时钟反向延时

syn_pulse为采样脉冲尖,与采样数据同时变化。

con_syn为脉冲尖循环计数

syn_out为累加和同步脉冲

data_out为累加和

对采样脉冲尖进行0-15的循环计数,用于控制累加的节奏,每当计数器等于15的时候,把结果送给data_out,并产生累加和同步脉冲。 

代码:

//相邻16点相加
module sigma_16p( clk , res , data_in , syn_in , data_out , syn_out);

input             clk;
input   
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值