摘要:module handshack( input clk, input rst_n, input req, input [7:0] datain, output ack, output [7:0] dataout);reg reqr1,reqr2,reqr3;reg [7:0] dataoutr;reg ackr;always @ (posedge clk,negedge rst_n)if(!rst_n) {reqr3,reqr2,reqr1} <= 3'b111;else {reqr3,reqr2,reqr1} <= {reqr2,reqr1,r...
阅读全文
摘要:这个是基于RAM的异步FIFO代码,个人认为代码结构简单易懂,非常适合于考试中填写。与同步fifo相比增加了读写控制信号的跨时钟域的同步。此外,判空与判满的也稍有不同。module fifo#( parameter DSIZE = 8, ASIZE = 4)( input [DSIZE-1:0] wdata, input winc, wclk, wrst_n, input rinc, rclk, rrst_n, output [DSIZE-1:0] rdata, output reg wfull, output reg rempty); reg [ASIZE:0] wptr, r...
阅读全文
摘要:问题描述:输入信号:i_pulse,输出信号:o_found,输入信号是一个比时钟还要窄的脉冲,请问如何在该脉冲发生后及时检测到,并输出o_found = 1进行指示。注意:o_found的输出可以比输入脉冲晚几个时钟周期,但是不能延迟太长。图示: ____________ ____________i_clk:_____________| |____________| |___________ _________i_pulse:_________________________| |...
阅读全文
摘要:将键盘输入的一个数组倒序输出:#include <iostream.h>#define N 6int main (){ int i,temp; int a[N]; cout<<"请输入 "; cout<<N; cout<<" 个数字:"<<endl; for(i=0;i<N;i++) cin>>a[i]; cout<<endl; for(i=0;i<N/2;i++) { temp=a[i]; a[i]=a[N-1-i]; a[N-1-i]=temp; } co
阅读全文
摘要:一个农夫发现围成正方形的围栏比长方形的节省4个木桩但是面积一样。羊的数目和正方形围栏的桩子的个数一样但是小于36,问有多少羊?//一个农夫发现围成正方形的围栏比长方形的节省4个木桩但是面积一样。羊的数目和正方形围栏的桩子的个数一样但是小于36,问有多少羊?#include <iostream>using namespace std;#define N 4 //节省的木桩数目void main(){ float x,m,n,y; for(m=1;m<19;m++) { for(n=1;n<=m;n++) { x=(2*(m+n)-N)/4; y=4*x; if((m*n=
阅读全文
摘要:1.输出1~5的阶乘,运用静态变量//输出1~5的阶乘值#include <iostream>using namespace std;int fac(int);int main(){ int i; for(i=1;i<=5;i++) cout<<i<<"!="<<fac(i)<<endl; system("pause"); return 0;}int fac(int n){ static int f=1; f=f*n; return f;}2.运用递归算法求n!//输出1~5的阶乘值#in
阅读全文
摘要:从键盘输入10个数字,按从小到大的顺序排序之后输出#include <iostream>using namespace std;int main(){ int a[10]; int i,j,t; cout<<"请输入10个数字:"<<endl; for (i=0;i<10;i++) cin>>a[i]; cout<<endl; for(j=0;j<9;j++) for(i=0;i<9-j;i++) if(a[i]>a[i+1]) { t=a[i]; a[i]=a[i+1]; a[i+1]=t
阅读全文
摘要:约翰逊(Johnson)计数器又称扭环计数器,是一种用n位触发器来表示2n个状态的计数器。它与环形计数器不同,后者用n位触发器仅可表示n个状态。n位二进制计数器(n为触发器的个数)有2^n个状态。若以四位二进制计数器为例,它可表示16个状态。module johnson#( parameter N=4)( input clk, input rst_n, output reg [N-1:0] q);always @ (posedge clk,negedge rst_n)if(!rst_n) q <= {N{1'b0}};else if(!q[0]) q <= ...
阅读全文
摘要:101101序列检测器module seqdet( input wire x, input wire clk, input wire rst_n, output reg z);//用verilog设计一个 101101 序列的检测器reg [4:0] cs,ns;localparam [4:0] IDLE =5'd0, A =5'd1, B =5'd2, C =5'd3, D =5'd4, E =5'd5, F =5'd6;//状态转移always @ (posedge clk,n...
阅读全文
摘要:一位全加器的与非门实现:其中的进位输出cou也是一个三人表决器电路最终电路实现形式为:完全用与非门搭的全加器电路如下:
阅读全文
摘要:http://www.cnblogs.com/qiweiwang/archive/2011/04/09/2010591.html同步fifo---基于循环队列的方式module fifo#( parameter B=8,//存储数据宽度,一个数据有B位 W=3//地址空间位数,可存储2^W个数据)( input clk, input rst_n, input rd, input wr, input [B-1:0] w_data, output empty, output full, output reg [B-1:0] r_data);reg [B-1:0] array_reg[2*...
阅读全文