当前位置: 首页 > news >正文

福州网站建设yfznkj小程序后台管理系统

福州网站建设yfznkj,小程序后台管理系统,wordpress文章批量,表格制作软件app描述 实现数据位宽转换电路,实现24bit数据输入转换为128bit数据输出。其中,先到的数据应置于输出的高bit位。 电路的接口如下图所示。valid_in用来指示数据输入data_in的有效性,valid_out用来指示数据输出data_out的有效性;clk是时…

描述

        实现数据位宽转换电路,实现24bit数据输入转换为128bit数据输出。其中,先到的数据应置于输出的高bit位。

        电路的接口如下图所示。valid_in用来指示数据输入data_in的有效性,valid_out用来指示数据输出data_out的有效性;clk是时钟信号;rst_n是异步复位信号。

接口时序示意图

输入描述

    input                 clk         ,   input                 rst_n        ,input                valid_in    ,input    [23:0]        data_in       

 输出描述

    output    reg            valid_out    ,output  reg [127:0]    data_out

解题分析

输入:valid_in, data_in[23:0]
输出:valid_out,data_out[127:0]
        输入数据是24bit,输出数据是128bit。

        因为128×3=24×16128\times3=24\times16128×3=24×16,所以每输入16个有效数据,就可以产生三个完整的输出。因此设置一个仅在输入数据有效时工作的计数器cnt,计数范围是0-15。

    reg [3:0]   cnt;always@(posedge clk or negedge rst_n) beginif(~rst_n)cnt <= 0;elsecnt <= ~valid_in? cnt:cnt==15  ? 0  :cnt+1;end

然后设置一个数据暂存器data_lock,每当输入有效时,将数据从低位移入。

reg [127:0] data_lock;
always@(posedge clk or negedge rst_n) beginif(~rst_n)data_lock <= 0;elsedata_lock <= valid_in? {data_lock[103:0], data_in}: data_lock;
end

alt

        由上图易得,每当计数器cnt计数到5、10、15时,data_out要进行更新,并拉高valid_out一个周期。 

    always@(posedge clk or negedge rst_n) beginif(~rst_n)valid_out <= 0;elsevalid_out <= (cnt==5 || cnt==10 || cnt==15)&&valid_in;endalways@(posedge clk or negedge rst_n) beginif(~rst_n)data_out <= 0;else if(cnt==5)data_out <= valid_in? {data_lock[119:0], data_in[23:16]}: data_out;else if(cnt==10)data_out <= valid_in? {data_lock[111:0], data_in[23: 8]}: data_out;else if(cnt==15)data_out <= valid_in? {data_lock[103:0], data_in[23: 0]}: data_out;elsedata_out <= data_out;end

参考代码

`timescale 1ns/1nsmodule width_24to128(input 				clk 		,   input 				rst_n		,input				valid_in	,input	[23:0]		data_in		,output	reg			valid_out	,output  reg [127:0]	data_out
);reg [3:0]   cnt;reg [127:0] data_lock;always@(posedge clk or negedge rst_n) beginif(~rst_n)cnt <= 0;elsecnt <= ~valid_in? cnt:cnt+1;endalways@(posedge clk or negedge rst_n) beginif(~rst_n)valid_out <= 0;elsevalid_out <= (cnt==5 || cnt==10 || cnt==15)&&valid_in;endalways@(posedge clk or negedge rst_n) beginif(~rst_n)data_lock <= 0;elsedata_lock <= valid_in? {data_lock[103:0], data_in}: data_lock;endalways@(posedge clk or negedge rst_n) beginif(~rst_n)data_out <= 0;else if(cnt==5)data_out <= valid_in? {data_lock[119:0], data_in[23:16]}: data_out;else if(cnt==10)data_out <= valid_in? {data_lock[111:0], data_in[23: 8]}: data_out;else if(cnt==15)data_out <= valid_in? {data_lock[103:0], data_in[23: 0]}: data_out;elsedata_out <= data_out;end
endmodule

注:解题分析来源于网友,如有侵权,请告删之。

http://www.yayakq.cn/news/708178/

相关文章:

  • 建设网站的协议优良的定制网站建设
  • 花都网站建设公司怎么样抖音seo
  • 网站备案流程及步骤wordpress 搜索框代码
  • 建设网站有哪些步骤西宁网站建设报价壹君博贴心
  • 宠物论坛网站策划书专业的网站建站公司
  • 网站开发绪论erp系统哪个品牌最好
  • 怎么开通网站和进行网页设计佛山网站建设与设计
  • 网站制作工资成都logo标志设计
  • 做网站下载别人的图算不算侵权萌导航
  • 濮阳网站建设公司制作一个网站大概要多少钱
  • 学校网站建设材料网站开发科普书
  • 商务网站建设ppt企业网站的设计与实现论文
  • 网站建设设计服务公司建设大型网站推广收费
  • 网上有做口译的网站么免费成品网站模板下载
  • 网站建设找推推蛙菜谱网站后台代码
  • 购物网站模板代码下载精品课程网站建设设计方案
  • 燃气公司网站建设方案网站建设及报价格方案
  • 建设项目 环评申报网站网络推广和网站推广的关系
  • 怎样用ps做网站首页图装修公司网站如何做网络推广
  • wordpress中文评论插件优化网站关键词排名
  • 网站主服务器地址宁夏网站设计公司
  • 建设企业网站平台做网站业务员怎么样
  • ui的设计网站电影网站建设多少钱
  • 免费高清网站推荐muse cc 做网站
  • php网站空间临汾尚世互联网站建设
  • 网站的必要性网站首页改版费用
  • 盐城网站开发渠道合作哪里网站开发好
  • 重庆系统建站怎么用网站关键词分析工具
  • 注册网站流程及资料建网站做站长
  • 想注册一个做网站的公司好网站建设投标文件范本