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

开传奇私服网站怎么做搜索引擎营销方案

开传奇私服网站怎么做,搜索引擎营销方案,项目开发平台有哪些,天津做网站优化的公司今天的项目是在 Verilog HDL 中实现可编程数字延迟定时器。完整呈现了延迟定时器的 Verilog 代码。 所实现的数字延迟定时器是 CMOS IC LS7212,用于生成可编程延迟。延迟定时器的规格可以在这里轻松找到。基本上,延迟定时器有 4 种操作模式:…

今天的项目是在 Verilog HDL 中实现可编程数字延迟定时器。完整呈现了延迟定时器的 Verilog 代码。
在这里插入图片描述
所实现的数字延迟定时器是 CMOS IC LS7212,用于生成可编程延迟。延迟定时器的规格可以在这里轻松找到。基本上,延迟定时器有 4 种操作模式:一次性 (OS)、延迟操作 (DO)、延迟释放 (DR)、双延迟 (DD)。这四种模式将通过输入 mode_a 和 mode_b 选择。
在这里插入图片描述
wb[7:0] 输入用于根据延迟定时器规范中给定的方程对延迟进行编程。要了解更多它在每种模式下的工作原理以及输入如何控制延迟,请参阅其数据表。以下波形显示了每种模式下延迟的产生方式。

在这里插入图片描述
以下是可编程数字延迟定时器 LS7212 的 Verilog 代码。

//fpga4student.com: FPga projects, Verilog projects, VHDL projects// Verilog project: Verilog code for delay timer LS7212 module delay_timer_ls7212  (   input [7:0] wb, // weighting bits  input clk, // clock inputinput reset, // timer reset  input trigger, // trigger input  input mode_a, mode_b, // mode bits A and B  output reg delay_out_n // delay output, active low  );  reg[7:0] PULSE_WIDTH ;  reg [7:0] DELAY;  reg [7:0] TIMER=0;  reg trigger_sync_1=0,trigger_sync_2=0;  wire trigger_rising,trigger_falling;  reg timer_start=0,out_low=0;  wire timer_clear2,timer_clear3,timer_clear;  reg [1:0] mode;  reg reset_timer1=0,reset_timer2=0,reset_timer=0;  wire reset_timer3,reset_det;  reg reset_det1=0,reset_det2=0;  
//fpga4student.com: FPga projects, Verilog projects, VHDL projectsalways @(posedge clk)  begin  trigger_sync_1 <= trigger; // the first Flip-Flop  trigger_sync_2 <= trigger_sync_1;// the second Flip-Flop  reset_timer1 <= reset_timer;  reset_timer2 <= reset_timer1;  reset_det1 <= reset;  reset_det2 <= reset_det1;  end  // Identify the zero to one transitions on trigger signal  assign trigger_rising = trigger_sync_1 & (~trigger_sync_2);   assign trigger_falling = trigger_sync_2 & (~trigger_sync_1);   assign reset_timer3 = reset_timer1 & (~reset_timer2);  assign reset_det = reset_det2 & (~reset_det1);  // sample Mode and wb  always @(trigger_rising,trigger_falling,mode_a,mode_b,wb)  begin  if(trigger_falling == 1 || trigger_rising == 1) begin  PULSE_WIDTH = wb;  DELAY = (2*wb + 1)/2;  mode = {mode_a,mode_b};  end  end  // modes  always @(mode,reset,trigger_falling,trigger_rising,TIMER,reset,trigger,PULSE_WIDTH,DELAY,reset_det)  begin  case(mode)  2'b00: // One-Shot Mode  begin  if(reset) begin  out_low <= 0;  timer_start <= 0;  reset_timer <= 1;  end  else if(trigger_rising==1) begin  out_low <= 1;  timer_start <= 1;  reset_timer <= 1;  end  else if(TIMER>=PULSE_WIDTH) begin  out_low <= 0;  timer_start <= 0;  reset_timer <= 1;  end  end  2'b01: // Delayed Operate Mode  begin  if(reset) begin  out_low <= 0;  timer_start <= 0;  reset_timer <= 1;  end  else if(reset_det==1 && trigger==1) begin  timer_start <= 1;  reset_timer <= 0;  end  else if(trigger_rising==1) begin  timer_start <= 1;  reset_timer <= 0;  end  else if(trigger_falling==1 || trigger == 0) begin  out_low <= 0;  reset_timer <= 1;  timer_start <= 0;  end  else if(TIMER >= DELAY) begin  out_low <= 1;  timer_start <= 0;  reset_timer <= 1;  end  //else  //     reset_timer <= 0;  end       2'b10: // Delayed Release Mode  begin  if(reset) begin  out_low <= 0;  timer_start <= 0;  reset_timer <= 1;  end  else if(trigger_rising==1 || trigger == 1) begin  out_low <= 1;  end  else if(trigger_falling==1 ) begin  timer_start <= 1;  reset_timer <= 0;  end  else if(TIMER>=DELAY) begin  out_low <= 0;  timer_start <= 0;  reset_timer <= 1;  end  end       2'b11: // Delayed Dual Mode  begin  if(reset) begin  out_low <= 0;  timer_start <= 0;  reset_timer <= 1;  end  else if(reset_det==1 && trigger==1) begin  timer_start <= 1;  reset_timer <= 0;  end  else if(trigger_falling==1 || trigger_rising==1 ) begin  timer_start <= 1;  reset_timer <= 0;  end  else if(TIMER>=DELAY) begin  out_low <= trigger;  timer_start <= 0;  reset_timer <= 1;  end  end  endcase  end  
//fpga4student.com: FPga projects, Verilog projects, VHDL projects// timer  always @(posedge clk or posedge timer_clear)  begin  if(timer_clear)   TIMER <= 0;  else if(timer_start)  TIMER <= TIMER + 1;  end  assign timer_clear = reset_timer3 | trigger_rising == 1 | timer_clear3 ;  assign timer_clear2 = (trigger_rising == 1)|(trigger_falling == 1);  assign timer_clear3 = timer_clear2 & (mode == 2'b11);  //delay output  always @(posedge clk)  begin  if(out_low == 1)  delay_out_n <= 0;  else  delay_out_n <= 1;  end  endmodule  

延迟定时器的 Testbench Verilog 代码:

`timescale 1ns / 1ps  
//fpga4student.com: FPga projects, Verilog projects, VHDL projects
// Testbench Verilog code for delay timermodule tb_ls7212;  // Inputs  reg [7:0] wb;  reg clk;  reg reset;  reg trigger;  reg mode_a;  reg mode_b;  // Outputs  wire delay_out_n;  //fpga4student.com: FPga projects, Verilog projects, VHDL projects// Instantiate the Unit Under Test (UUT)  delay_timer_ls7212 uut (  .wb(wb),   .clk(clk),   .reset(reset),   .trigger(trigger),   .mode_a(mode_a),   .mode_b(mode_b),   .delay_out_n(delay_out_n)  );  initial begin  // Initialize Inputs  wb = 10;  mode_a = 0;  mode_b = 0;  reset = 0;  trigger = 0;  #500;  trigger = 1;  #15000;  trigger = 0;  #15000;  trigger = 1;  #2000;  trigger = 0;  #2000;  trigger = 1;       #2000;  trigger = 0;       #20000;  trigger = 1;            #30000;  trigger = 0;  #2000;  trigger = 1;  #2000;  trigger = 0;       #4000;  trigger = 1;       #10000;  reset = 1;  #10000;  reset = 0;  // Delay Operate  // Add stimulus here  end  initial begin   clk = 0;  forever #500 clk = ~clk;  end  endmodule  
//fpga4student.com: FPga projects, Verilog projects, VHDL projects

Verilog 中数字延迟定时器的仿真波形
One-Shot Mode
在这里插入图片描述

Delayed Operate Mode
delay timer in Verilog

Delayed Release Mode
delay timer in Verilog

Delay Dual Mode
delay timer in Verilog

可编程延迟定时器的 Verilog 代码是可综合的,并且可以在 FPGA 上实现。

http://www.15wanjia.com/news/22500.html

相关文章:

  • 用wordpress 帮客户建站企业培训机构有哪些
  • 增加wordpress打开速度杭州关键词优化测试
  • 网站建设及维护干什么的新东方考研班收费价格表
  • wordpress 商品插件seo的最终是为了达到
  • 网站推广软件预期效果如何做seo
  • 石家庄市城乡建设学校网站万网的app叫什么
  • 武汉网站建设管理登录aso优化服务站
  • 网站开发后台用什么语言竞价排名的优缺点
  • 上海政府网站的建设指标淘宝app官方下载
  • 湖北建设厅政务网站公司优化是什么意思
  • wordpress 分享到插件北京seo排名方法
  • 做网站挣外快建立网站步骤
  • 网站排行榜上升代码培训心得体会范文大全1000字
  • 网站备案查询姓名小程序制作流程
  • 网站建设素材包电商中seo是什么意思
  • 长沙一日游最佳方案网络搜索优化
  • 哪个网站有代做课设的百度注册入口
  • 百度做网站推广百度推广销售员好做吗
  • 调兵山网站建设微信小程序排名关键词优化
  • 做网站需要准备的工具百度快照投诉中心官网
  • 国外建站网址四川全网推网络推广
  • 山东济宁刚刚出大事山东疫情seo教学实体培训班
  • 网站数据展示营销手段
  • 哈尔滨网站制作公司哪家好广州市口碑seo推广
  • 文本文档做网站怎么加图片网站流量统计分析报告
  • 北京网站设计网站设计公司价格武汉网站设计
  • 苏州网站建设制作方案有哪些免费网站可以发布广告
  • 厦门做网站排名公众号排名优化软件
  • 贵阳专业做网站今日国际新闻
  • 义乌网站制作是什么php免费开源crm系统