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

实验室网站建设的调查报告电子商务网站建设知识

实验室网站建设的调查报告,电子商务网站建设知识,网站制作多少钱一个月,卧龙区2015网站建设口碑在verilog 中可以实现的数字电路主要分为两类----组合逻辑电路和时序逻辑电路。组合逻辑电路比较简单#xff0c;仅由基本逻辑门组成---如与门、或门和非门等。当电路的输入发生变化时#xff0c;输出几乎#xff08;信号在电路中传递时会有一小段延迟#xff09;立即就发生…在verilog 中可以实现的数字电路主要分为两类----组合逻辑电路和时序逻辑电路。组合逻辑电路比较简单仅由基本逻辑门组成---如与门、或门和非门等。当电路的输入发生变化时输出几乎信号在电路中传递时会有一小段延迟立即就发生变化。相反时序逻辑电路使用时钟且必须要触发器等存储元件所以其输出变化与电路时钟同步不是即时变化的。这篇文章将讨论如何使用 assign 关键字在 verilog 中实现连续赋值continuous assignment以及使用连续赋值语句实现基本逻辑门和多路选择器。1、Verilog 中的连续赋值Continuous Assignment设计者可以使用连续赋值语句将数据驱动到设计中的net类型中。因此连续赋值语句经常被用来实现组合逻辑电路。实际上可以使用两种不同的方法在verilog中实现连续赋值。第一个被称为显式explicit连续赋值这是verilog中最常用的连续赋值方法此外还可以使用隐式implicit连续赋值或者叫net声明赋值。这种方法不太常见但它要写的代码更少。1.1、显式连续赋值Explicit Continuous Assignment使用assign关键字进行连续赋值的方法被称为显式连续赋值。下面的 verilog 代码展示了使用 assign 关键字进行连续赋值的一般语法。assign variable value;variable 是要为其分配数据的信号的名称只能使用连续赋值的方式来给net类型的变量赋值。value 可以是一个固定值或者是某个表达式在此表达式中可以使用变量或net类型。使用连续赋值时只要 value 中的一个信号改变状态variable 值就会立即发生改变。下面的代码片段展示了一个最基本的 verilog 连续赋值示例。在该示例中只要 b 信号改变状态a 的值就会立即更新使其等于 b。assign a b;1.2、线网声明赋值Net Declaration Assignment设计者还可以在 verilog 设计中使用隐式连续赋值这种方法通常也被称为线网net声明赋值。使用线网声明赋值时只需要在声明信号的语句中写一条连续赋值语句这可以减少代码行数。在 verilog 中使用线网声明赋值时需要在声明信号时使用 符号为信号赋值。下面的代码片段展示了线网声明赋值的一般语法。type variable value;variable和value使用方法与显式连续赋值中一致。下面的 verilog 代码展示了如何使用线网声明赋值将 b 的值赋给信号 a。wire a b;2、 在Verilog 中实现组合逻辑电路使用连续赋值语句和运算符即可实现基本的组合逻辑电路。下图是一个3输入与门的示例为了在 verilog 中实现该电路可以使用 assign 关键字将数据驱动到 and_out 输出。这意味着 and_out 信号必须声明为net线网类型例如wire 然后可以使用按位与运算符 () 来实现基本的与门。下面的代码片段展示了如何实现这个3输入与门。assign and_out a b c;这个例子展示了在 verilog 中设计基本的组合逻辑电路是多么的简单。如果设计者需要更改逻辑门的功能只需要使用不同的verilog运算符即可。又或者设计者需要构建更复杂的组合逻辑电路那么也可以混合使用不同的位运算符。为了证明这一点将以下面的电路作为示例。要在 verilog 中实现电路需要混合使用按位与 () 运算符 和 按位或 | 运算符。下面的代码片段展示了如何在 verilog 中实现这一点。assign logic_out (a b) | c;这段代码同样不难理解。但是设计者需要确保使用了括号来实现复杂的逻辑电路。这不仅可以确保电路正常运行还可以让代码更易于阅读和维护。2.1、在 Verilog 中实现多路选择器Multiplexors多路选择器是组合逻辑电路中一个常用的组件。在 verilog 中设计者可以通过多种方式实现这些组件其中一种方法使用称为always块always block的结构此语法通常被用来实现时序逻辑电路但同时也可以实现组合逻辑电路。2.1.1、Verilog 条件运算符verilog中有一个与C语言等编程语言类似功能的条件运算符。要使用条件运算符需要在 ? 表达式前写一个逻辑表达式然后判断它是真还是假。根据表达式的真假将两个值中的某一个赋值给输出。下面的 verilog 代码展示了条件运算符使用的一般语法。output expression ? value if true : value if false;接下来看一个简单的 2选1的多路选择器的例子如下面的电路图所示。下面的代码片段清楚地展示了如何使用条件运算符在 verilog 中实现上图中的多路选择器。assign q addr ? b : a;2.1.2、嵌套的条件运算符Nested Conditional Operators虽然这并不常见但设计者也可以使用嵌套的条件运算符Nested Conditional Operators来编写代码以实现更大的多路选择器。接下来将以一个4选1多路选择器为例进行说明如下图电路所示。为了使用条件运算符在 verilog 中实现此电路可以将该多路选择器视为一对2选1的多路选择器。这意味着其中一个多路选择器将在输入 A 和 B 之间进行选择而另一个多路选择器则在输入 C 和 D 之间进行选择。这两个多路选择器都使用地址信号的 LSB 作为地址引脚。assign mux1 addr[0] ? b : a; assign mux2 addr[0] ? d : c;要实现完整的4选1多路选择器还需要另一个多路选择器。这个多路选择器将前两个多路选择器的输出作为输入并使用地址信号的 MSB 在它们之间进行选择。下面的代码片段展示了实现该功能的方法。assign q addr[1] ? mux2 : mux1;此代码使用了在上一个示例中定义的信号 mux1 和 mux2但其实设计者也可以从此代码中删除 mux1 和 mux2 信号作为替代使用嵌套的条件运算符这可以有效地减少代码行数。下面的代码片段展示了如何做到这一点。assign q addr[1] ? (addr[0] ? d : c) : (addr[0] ? b : a);从这个例子也可以看出使用条件运算符在 verilog 中实现多路选择器时代码会变得难以阅读和理解。因此设计者最好只使用这种方法来实现小型的多路选择器。2.1.3、用数组Arrays作为多路选择器设计者也可以使用verilog中的数组来构建简单的多路选择器。为此可以将所有多路选择器的输入组合成一个数组并使用地址指向数组中的元素。为了更好地了解它是如何在实践中运用的仍然以一个4选1的多路选择器为例。首先需要将输入信号组合成一个数组有两种方式可以做到这一点。第一种先声明一个数组然后给数组中的每一位赋值如下面的 verilog 代码所示。assign in_vec[0] a; assign in_vec[1] b; assign in_vec[2] c; assign in_vec[3] d;第二种可以使用verilog中的拼接运算符 { }这样就可以在一行代码中对整个数组赋值----使用一对花括号 { } 并在其中列出希望包含在数组中的所有元素。在使用拼接运算符时如果是使用的net类型那么也可以在一条语句中声明和赋值。下面的 verilog 代码展示了如何使用拼接运算符来对数组赋值。assign in_vec {d, c, b, a}; //赋值 wire [3:0] in_vec {d, c, b, a}; //声明赋值由于 verilog 是一种弱类型Loosely Typed Language语言所以也可以使用两位地址信号就好像它是一个integer类型一样然后该信号将被用作确定选择4个元素中的哪一个的指针。下面的代码片段展示了如何实现这种方法。由于多路选择器的输出是wire类型所以必须在这种情况下使用连续赋值。assign mux_out in_vec[addr];您有任何问题都可以在评论区和我交流本文由 孤独的单刀 原创首发于CSDN平台博客主页wuzhikai.blog.csdn.net您的支持是我持续创作的最大动力如果本文对您有帮助还请多多点赞、评论和收藏⭐
http://www.dnsts.com.cn/news/129927.html

相关文章:

  • 企业网站界面 优帮云华为云网站建设怎么设置选择项
  • c# 网站开发教程seo wordpress主题
  • 山西专业制作网站个人网站备案取名
  • 网页设计学校网站制作crm客户管理系统论文
  • 深圳做网站推荐哪家公司什么可以放置网站内容
  • 东莞单位网站建设wordpress文章题目数字
  • 有域名怎么建网站自建网站怎么做推广
  • 网站建设产品说明书动漫专业大专
  • 茶叶flash网站中国商标注册申请官网
  • 网站优化有哪些方法设计课程
  • 网站建设上的新闻如何自建网站 卖东西
  • 做p2p投资理财的网站服务器配置wordpress
  • 什么样的公司需要做网站外贸网站建设知识 列表
  • 网站开发毕业任务书东莞企业网站建设预算大概多少
  • 网站的注册上一步下一步怎么做网站建设副业
  • 东莞网站建没电子商务网站开发数据库表格
  • 公司网站建设方案拓扑图百度开放平台登录
  • 做视频网站技术壁垒在哪里做不锈钢的网站有哪些
  • 绵阳网站推广优化有关建筑网站建设方案
  • 怎么用mvc架构做网站网页游戏怎么在手机上玩
  • 有没有个人做的网站赚流量费网页设计100个经典案例
  • 反恶意镜像网站网络游戏网站建设论文
  • 网站流量创建公司网站难吗
  • 如何自建网站入口佛山网站推广seo
  • 自己搭建视频播放网站韩国能否出线
  • 优秀网站建设外贸营销方式有哪些
  • 门户网站的营销特点视觉设计软件
  • 长春哪有做网站公司wordpress站点跟换域名
  • 邢台网站网页设计网站建设重要新
  • 兰州做网站或小程序外贸和网站制作