- 博客(19)
- 资源 (1)
- 收藏
- 关注
原创 ARMV8 B2 The AArch64 Application level memory mdel
ARMV8 B2 The AArch64 Application level memory mdelARM memory model 允许指令的observation 和 completion 按不同的顺序进行,因此是一种弱有序的存储架构,本章的章节主要给出ARMV8 存储架构详细的定义,ARMV8 存储架构的主要原则如下提供一个存储模型,该模型与C或Java等高级编程语言使用的内存模型具有类似的弱点(weakness)。例如,允许独立内存访问按照其他观察者看到的顺序重新排序。避免了大多数存储类型的
2022-04-04 21:46:35
2370
2
原创 奇数分频和偶数分频的Verilog实现——对分频本质上的理解
实现信号分频的Verilog方法有很多种,如果从本质上理解了分频这一思路则遇到任何的分频情况都能迎刃而解。因此首先来谈谈什么是分频。对于偶数分屏,如四分频,我们可以发现其分频后的时钟的跳变,无论是上升沿还是下降沿都是统一在原始时钟信号的上升沿如clk1, 或者是下降沿如clk2。如下图所示;因此对于偶数的分频,我们可以用一个计数器来实现;module div_2(clk,r...
2020-03-02 22:24:39
1724
原创 FPGA中八位数码管驱动的设计和验证
1.驱动原理其中8段数码管的动态显示驱动如图1所示,动态显示的特点是将所有位数码管的段选线 并联在一起,由位选线控制是哪一位数码管有效。选亮数码管采用动态扫描显示。所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,利用发光管的余辉和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示。而在实际的使用中,由于FPGA出来的引脚资源宝贵,因此在FPGA外部用了两个74HC595的...
2020-03-01 18:15:17
3412
原创 按键延迟时间测试的Verilog实现(FPGA实验)
本次实验目的在于熟悉状态机的控制,需要实现的功能如下:按下按键并保持然后松开当保持时间小于1s时,一个led灯闪烁2次。当保持时间小于2s大于1s时,一个led灯闪烁4次。当保持时间大于2s时,四个led灯闪烁4次。本次实验采用了状态机的思想控制,主要的细节包括:1.输入信号的缓冲;2输入信号的上升沿和下降沿的检测;3.不同延迟时间的跳转;4.按下计时和led闪烁计时器的各自设计;5,l...
2020-02-16 23:17:18
1404
1
原创 按键消抖的Verilog实现
由于普通物理按键存在反作用弹簧,因此当按下或者松开时均会产生额外的物理抖动,物理抖动便会产生电平的抖动。在按键从按下再到松开的过程中,其电平变化如图1所示,上为理想波形输出,下为实际波形输出。 因此,对于转变中间过程存在的跳变,我们需要将其去除,一般来说,噪声仅存在与一段时间内,如20ms。当检测到跳变沿后的开始进行计时,在计数时间内如果出现跳变则重新开始及时,知道在一定时间内没有检测...
2020-02-15 19:05:42
2000
原创 序列检测器Verilog设计
检测10010的串`timescale 1ns/10psmodule listcheck (rst,clk,in,result);input rst,clk;input in;output result;reg out;assign result = out;reg [2:0] current_state,next_state;parameter [2:0] S0 = 3...
2019-09-27 14:34:33
1960
原创 消除毛刺的两级缓冲器设计
module glitch(clk,data,q_out);input clk,data;output reg q_out;reg q1;always@(posedge clk)begin q1 <= data;endalways@(posedge clk)begin q_out <= q1;endendmodule
2019-09-27 14:19:29
496
原创 自动饮料售卖机Verilog设计
饮料为5美分,饮料机只能接收1美分,2美分,5美分的钱币,请设计一个Verilog电路表示`timescale 1ns/10psmodule sell(one,two,five,rset,clk,result);input one,two,five,rset,clk;output result;reg drink;assign result = drink;reg [2:0] c...
2019-09-27 14:12:36
4716
1
原创 三分频电路Verilog设计
三分频用两个在不同的时钟沿的序列发生器来构成一个3分频信号:`timescale 1ns/10psmodule div_3(clkin,clkout1,clkout2,clkout3);input clkin;output clkout1,clkout2,clkout3;reg [1:0] step1,step0;always @(posedge clkin)begin ca...
2019-09-27 13:58:43
8722
原创 二分频电路Verilog设计
2分频电路设计`timescale 1ns/10psmodule div_2(clk,rst,out);input clk,rst;output out;reg q;always@(posedge clk or negedge rst) if(!rst) q<=1'b0; else q<=~q;assign out=q...
2019-09-27 13:53:39
8193
原创 10进制计数器Verilog编程
计数器不仅能用于对时钟脉冲计数,还可以用于分频,定时,产生节拍脉冲序列以及进行数字运算等,分为同步计数器和异步计数器,在同步计数器中,当时钟脉冲的输入时,触发器的翻转是同时发生的。而在异步计数中,触发器的翻转有先有后,不是同时发生的。1.同步四位二进制加法计数器:各触发器的驱动方程:T0 = 1;T1 = Q0T2 = Q0Q1T3 = Q0Q1Q22.四位10进制...
2019-09-27 11:09:21
43669
4
原创 串行/解串器的设计
PCIe总线是用来取代PCI总线的新型串行总线协议。这个与将要设计的串行解串器类似。对于利用串行解串器来进行数据传输的两个系统,要发送的数据会先被保存下来,然后被送入到一个缓冲区内(即FIFO),接着,它们被串行化,然后一个一个比特地被发送给目标系统。在接收端,输入的串行数据被解串,然后再次保存到缓冲区内,并按照并行的格式被发送到接收系统的并行总线上,为了实现数据的同步,接...
2019-09-23 23:56:48
7627
原创 简化的CPU设计
用小型的简化的CPU作为verilog的练习,一方面可以学习RISC_CPU的基本结构和原理,进而巩固学习计算机体系结构;另一面可以学习并掌握一些常用的Verilog语法和验证方法。 首先CPU运行的过程分为以下几个流程:1.取指令;2.分析指令;3.执行指令。进一步细化可以分为:1.对指令进行译码;2.可以进行算术和逻辑运算;3.能与存储器和外设交换数据;4.提...
2019-09-16 23:36:53
967
3
原创 python在带单位的实验数据处理中的应用(python数据处理&python正则匹配)
作为一名理工科实验狗,日常科研的数据动不动就是100M,而用传统的excel+origin处理的方法需要消耗大量的时间因此,我用python写了数据处理的脚本,可以快速得到我想要的数据,将原来需要4个小时的数据处理工作缩短为4分钟(拷贝图片到PPT),大大提高了工作的效率。下面来介绍我的工作。首先是我的原材料:数据...
2019-09-11 16:39:49
2646
原创 数字电路设计实战
目录:一.设计要求二.Verilog 代码三.功能仿真四.逻辑综合五.形式验证六.静态时序分析七.版图综合八.版图后仿真九.添加PAD欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。新的改变我们对Markdown编辑器...
2019-08-31 21:17:29
2782
CMOS运算放大器和比较器的设计及应用
2020-10-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅