以流水线实现8bit 加法器。

 //date : 2013/8/23
//designer :pengxiaoen
//function : module pipeline (
clock ,reset ,
ina,inb,cin,
sum,cout
);
input clock ,reset;
input [:] ina ,inb ;
input cin;
output [:] sum ;
output cout ; reg [:] tempa,tempb,sum;
reg tempci,firstco,secondco,thirdco,cout;
reg [:] firsts,thirda,thirdb;
reg [:] seconda,secondb,seconds;
reg [:] firsta,firstb,thirds; always @ (posedge clock or negedge reset)
if(!reset)
begin
tempa <= ;
tempb <= ;
tempci<= ;
end
else begin
tempa <= ina;
tempb <= inb;
tempci<= cin;
end //------------------------------1---------------------------
always @(posedge clock)
begin
{firstco , firsts} <= tempa[:] + tempb[:] + tempci;
firsta <= tempa[:];
firstb <= tempb[:];
end //-----------------------------2-----------------------------
always @(posedge clock )
begin
{secondco,seconds} <= {firsta[:]+firstb[:] + firstco, firsts};
seconda <= firsta[:];
secondb <= firstb[:];
end //--------------------------------3---------------------------
always @ (posedge clock )
begin
{thirdco,thirds} <= {seconda[:] + secondb[:] + secondco , seconds};
thirda <= seconda[:];
thirdb <= secondb[:];
end //--------------------------------4-------------------------------
always @ (posedge clock )
begin
{cout ,sum} <= {thirda[:]+thirdb[:]+thirdco,thirds};
end endmodule

流水线的优缺点我就不多说。主要说明一下这个程序里面的注意点。
第一个always 里 对输入数据的后第0—1个bit进行相加。得到结果是 3 个bit。其中一个进位位,2个数据位

第二个alwasys 里对输入数据的后第2—3个bit进行相加。得到的结果是5个bit,其中一个进位位,4个数据位。

第三个alwasys 里对输入数据的后第4—5个bit进行相加。得到的结果是7个bit,其中一个进位位,6个数据位。

第四个alwasys 里对输入数据的后第6—7个bit进行相加。得到的结果是9个bit,其中一个进位位,8个数据位。

四级流水线的8bit加法器的更多相关文章

  1. CPU流水线与指令乱序执行

    青蛙见了蜈蚣,好奇地问:"蜈蚣大哥,我很好奇,你那么多条腿,走路的时候先迈哪一条啊?" 蜈蚣听后说:"青蛙老弟,我一直就这么走路,从没想过先迈哪一条腿,等我想一想再回答你 ...

  2. h.264并行解码算法2D-Wave实现(基于多核非共享内存系统)

    在<Scalable Parallel Programming Applied to H.264/AVC Decoding>书中,作者基于双芯片18核的Cell BE系统实现了2D-Wav ...

  3. ARM 处理器:RISC与CISC 是什么?【转】

    转自:https://blog.csdn.net/willsun2017/article/details/83388990 完全看懂 ARM 处理器:RISC与CISC 是什么? 历史.架构一次看透 ...

  4. 【CPU微架构设计】利用Verilog设计基于饱和计数器和BTB的分支预测器

    在基于流水线(pipeline)的微处理器中,分支预测单元(Branch Predictor Unit)是一个重要的功能部件,它负责收集和分析分支/跳转指令的执行结果,当处理后续分支/跳转指令时,BP ...

  5. 动手写一个简单版的谷歌TPU-指令集

    系列目录 谷歌TPU概述和简化 基本单元-矩阵乘法阵列 基本单元-归一化和池化(待发布) TPU中的指令集 SimpleTPU实例: (计划中) 拓展 TPU的边界(规划中) 重新审视深度神经网络中的 ...

  6. verilog流水线加法器

    四位加法器 两级加法实现 verilog code module pipeliningadder( output reg [3:0] s, output reg co, input [3:0] a, ...

  7. Intel系列CPU的流水线技术的发展

    Intel系列CPU的流水线技术的发展 CPU(Central processing Unit),又称“微处理器(Microprocessor)”,是现代计算机的核心部件.对于PC而言,CPU的规格与 ...

  8. 流水线(pipe-line)简介

    1.什么是流水线设计技术? 答:所谓流水线设计实际上是把规模较大.层次较多的组合逻辑电路分为几个级,在每一级插入寄存器组并暂存数据. K级就是有K个寄存器组,从上到下没有反馈电路. 2.流水线设计的深 ...

  9. 计算机体系结构——流水线技术(Pipelining)

    本文导读: 一.并行技术 .并行技术分类 .新技术的设计与实现 .指令周期 二.流水线技术 .什么是流水线 .指令重叠方式 .流水工作设计 .流水线的描述方法(时空图) .流水线特点 三.流水线的分类 ...

随机推荐

  1. SubLime2 乱码解决

    参考 http://www.fuzhaopeng.com/2012/sublime-text-2-with-gb2312-gbk-support/ 使用其中提到的方法二安装 首先下载http://su ...

  2. RatProxy

    http://book.51cto.com/art/201212/374023.htm http://www.oschina.net/p/ratproxy/similar_projects

  3. Wmic-linux

    Description Windows Management Instrumentation Command-line (WMIC) uses Windows Management Instrumen ...

  4. Laravel + Xdebug 时需要注意的问题

    [平台环境]64bit Win7 + Wamp2.5 (php 5.5, Apache 2.4.9) [Xdebug版本]php_xdebug-2.2.5-5.5-vc11-x86_64.dll 配置 ...

  5. hdoj 5249 KPI(treap)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5249 思路分析:使用queue记录管道中的值并使用treap能够查询第K大的功能查询第floor(m/ ...

  6. 腾讯webqq最新password加密算法,hash算法

    常常在做webqq机器人,可是最头痛的问题就是腾讯常常加一些验证串来防止robot,如今共享出最新的腾讯password加密算法和hash 算法 hash算法 def webqq_hash(i, a) ...

  7. Ext JS学习第十天 Ext基础之动态加载JS文件(补充)

    此文用来记录学习笔记: •Ext4.x版本提供的一大亮点就是Ext.Loader这个类的动态加载机制!只要遵循路径规范,即可动态加载js文件,方便把自己扩展组件动态加载进来,并且减轻浏览器的压力. • ...

  8. Spring源码地址和相关介绍的网址

    Spring源码地址下载: https://github.com/spring-projects/spring-framework/tags >多图详解Spring框架的设计理念与设计模式:ht ...

  9. JavaBean的一个小例子

    一.创建一个javaBean类: UseBean package com.oncall24h.ruchi; import java.io.Serializable; public class UseB ...

  10. thinkphp中Conf的配置

    -----www ----------admin -------------Conf ----------admin.php ----------Home -------------Conf ---- ...