为什么 Verilog 不被视为编程语言? [关闭]

2024-03-22

教授在课堂上说学生不应该说他们学会了用Verilog 编程。他说 Verilog 之类的东西不是用来编程的,而是用来设计的。那么 Verilog 与其他编程语言有何不同呢?


Verilog 与 VHDL 一样,旨在描述硬件。相反,C 或 C++ 等编程语言提供软件程序的高级描述,即微处理器执行的一系列指令。

实际上,Verilog 和 VHDL 并不提供与编程语言相同的功能,尽管它们看起来非常相似。例如,一个forC/C++ 中的循环描述了顺序的执行给定的代码片段;相反,一个for ... generateVerilog/VHDL 中的循环描述了多个parallel同一硬件构建块的实例(例如,AND逻辑门)。准确地说,还存在一个简单的forVerilog 中的循环,但同样,它必须是“可综合的”,也就是说,编译器必须能够生成符合描述的逻辑。

通常,Verilog/VHDL 的初学者会试图将给定的函数/算法从 C/C++ 类型的伪代码直接“翻译”为 Verilog/VHDL:令人惊讶的是,它有时可能有效,但它总是会导致非常糟糕的设计。为了成为一名优秀的 Verilog/VHDL 程序员,必须真正意识到这些差异。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么 Verilog 不被视为编程语言? [关闭] 的相关文章

  • 为什么 Mathematica 会打破模块中正常的作用域规则?

    正如最近的一篇文章中指出的post https stackoverflow com questions 2733239 lexical and dynamic scoping in mathematica local variables w
  • 我想知道 &a 到底返回什么?

    Suppose 第一个案例 int a int p a it works no error 第二种情况 long int a long int b b a it wont work 我们大多数人都说 b 是变量而不是指针 但请看下面的内容
  • 最好的屏幕抓取语言是什么? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • verilog $readmemh 对于 50x50 像素 RGB 图像花费太多时间

    我正在尝试编译用于 FPGA 编程的 verilog 代码 我将在其中实现 VGA 应用程序 我使用 QuartusII 和 Altera 我正在尝试正确使用 readmemh 来逐像素获取图片 现在 我已经使用 matlab 将图片转换为
  • 何时在 F# 中优先使用非类型化引用而不是类型化引用?

    F 既有类型化代码引用 也有非类型化代码引用 我想知道在什么用例中人们会选择其中一种而不是另一种 区别只是为了方便 非类型化和类型化引文在所有情况下都可以转换为每种类型 或者是类型化引文 e G 可能使用非类型化引用的子集 是否有任何示例仅
  • 不同语言如何在其标准库中实现排序? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 了解外部函数接口 (FFI) 和语言绑定

    混合不同的编程语言长期以来一直是我不太理解的事情 根据这篇维基百科文章 http en wikipedia org wiki Foreign function interface Operation of an FFI 外部函数接口 或 F
  • 为什么是函数式语言? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我在这里看到很多关于函数式语言之类的讨论 为什么要使用一种语言而不是 传统 语言 他们在哪些方面做得更好 他们最差的是什么 理想的函数
  • 在 Verilog 设计中产生时钟故障

    我正在使用 Verilog 设计芯片 我有一个 3 位计数器 我希望当计数器处于第 8 次循环时 应该有一个时钟故障 之后就可以正常工作了 在 Verilog 设计中产生时钟故障的可能方法是什么 在时钟信号上注入毛刺的一种方法是使用forc
  • 什么是 := 运算符?

    在某些编程语言中 我看到 例如 x y 这是什么 运算符通常被称为 它有什么作用 在所有支持运算符的语言中 这意味着分配 在支持运算符的语言中 the 运算符通常表示相等比较 在语言中 意味着赋值 通常用于相等比较 does mean 我不
  • 您知道针对多种编程语言的快速参考指南吗? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 在我的工作过程中 我维护多种编程语言的代码 如下所列 由于我还没有掌握其中的大部分内容 所以我一直忘记
  • F# 中的非类型化/类型化代码引用与宏卫生之间是否存在关系?

    我想知道 F 中的非类型 类型代码引用与宏系统的卫生之间是否存在关系 他们是否用各自的语言解决相同的问题 或者它们是不同的关注点 元编程方面是唯一的相似之处 即使在这方面 也存在很大的差异 您可以将宏的转换器视为从语法到语法的函数 就像您可
  • 我怎样才能让我的verilog移位器更通用?

    这里我有一个移位器 但现在它最多只能工作 3 位 我一直在寻找 但不知道如何让它工作最多 8 位 module shifter a b out input 7 0 a b output 7 0 out wire 7 0 out1 out2
  • 俄语编程语言“Rapira”的现代实现? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 是否有俄语 Rapira 编程语言的现代 1990 年以后 实现 维基百科没有提及 这个问题让我回想起
  • 使用 < 有什么区别? java 泛型中的 extends SomeAbstract> 与 SomeAbstract

    我将从 DotNet 转向 java 这种扩展的想法是新的 我看过一些帖子充分解释了使用List
  • 哪种函数式编程语言在 Eclipse 中提供最好的支持?

    作为一项练习 我的团队正在考虑学习函数式编程 选择一种语言的因素之一是它在 Eclipse 中的支持 任何带有 Eclipse 插件的语言都可以 但是哪种语言提供最好的免费插件呢 额外问题 该语言的最佳在线 书籍教程 我不知道它是否是最好的
  • 左/右旋转进位的实际用途

    循环左进位和循环右进位指令有哪些实际用途 在我的汇编课上 我们无法想出一个有用的好例子 如果要将位从一个操作数移出并移入另一个操作数 SHL EAX 1 move sign bit of EAX RCL EDX into LSB of ED
  • const 变量悖论

    如果我有一些关于 C 的表达式 const int x 3 我可以说 x 是一个变量吗 这看起来很奇怪 因为 x 不是变量 因为我无法更改它 提前感谢您的任何解释 Edited附 感谢您的所有回答 我明白根据 C 的定义 我的问题的答案可能
  • 语言是如何以及为何形成的/是否有任何正在发展的语言表现出希望? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何在 icarus verilog 中包含文件?

    我知道基本的 include filename v 命令 但是 我试图包含另一个文件夹中的模块 现在 该模块还包括同一文件夹中存在的其他模块 但是 当我尝试在最顶层运行该模块时 出现错误 C Users Dell Desktop MIPS

随机推荐

  • 如何重置 iOS 9 通用链接设置?

    在我的 iOS 9 应用程序上测试通用链接时 我不小心点击了 mywebsite com gt 右上角 这使得应用程序再次导航到网站 现在我似乎无法再次使通用链接起作用 似乎 iOS 已经记住了我的偏好 即我希望看到在 Safari 而不是
  • SQL Server 中的 DateTime2 与 DateTime

    哪一个 datetime https msdn microsoft com en us library ms187819 aspx datetime2 https msdn microsoft com en us library bb677
  • 撰写:LazyColumn 在单个项目更新时重组所有项目

    我正在尝试使用 LazyColumn 在列表中显示订单列表 这是代码 Composable private fun MyOrders orders List
  • 龙卷风 vs wsgi(带gunicorn)

    I read this http rz scale it pl 2013 01 25 tornado the best web framework html关于龙卷风 另一方面 如果您已经有 WSGI 应用程序并且想要运行它 在速度极快的t
  • 处理 iOS 10 中的 AutoLayout 约束动画差异?

    我注意到在 iOS 10 Beta 5 即将尝试 Beta 6 中 AutoLayout 约束动画的行为有点不同 例如 此方法的工作方式与之前的 iOS 版本不同 view addConstraints constraints view s
  • 如何在 autoconf 配置脚本/makefile 中添加到库的链接

    我是一个自动工具新手 我很难轻松地弄清楚如何做 将特定库链接到配置的目标之一 我有一个源包 我想用通常的方式构建 configure make make install 不幸的是 其中一个 cpp 缺少对另一个库的引用 手动编译它 调整命令
  • Spray 如何找到资源 - 例如javascript

    使用 Spray io 构建我的第一个 Servlet 非常简单 但从未找到标头中引用的资源 头 gt 这些资源必须放在哪个目录中 或者如何引导喷雾去那里查找 简单的问题 但我无法弄清楚 非常感谢 Girgl 对于 Spray 路由 我使用
  • 是否可以解构 ValueTuple 参数?

    是否可以解构一个不是从方法返回但作为输出参数的元组 我不确定我是否正确表达了自己的意思 甚至不确定是否使用了正确的术语 所以这里有一些例子 void OutMethod out int aNumber string someText out
  • 有没有办法让 gcc 输出原始二进制文件?

    是否有一组命令行选项可以说服 gcc 从独立的源文件生成平面二进制文件 例如 假设 foo c 的内容是 static int f int x int y x x return y 2 没有外部引用 没有任何内容可以导出到链接器 我想要一个
  • 使用多源 PUT 和 DELETE 请求时如何解决 ASP.NET Web API CORS 预检问题?

    我有一个 ASP NET Web API 由三个不同的 SPA 调用 我正在为 Web API 使用 Windows 身份验证 我最初尝试在 Web config 中配置 CORS 如下所示
  • 如何找出 rubocop 正在使用哪个配置文件?

    我很清楚 rubocop 遵循的规则来查找它用来构建它使用的警察列表的配置文件或文件 解释如下 RuboCop 配置 https docs rubocop org rubocop configuration html 然而 这些规则允许几种
  • Spring Roo 的 Maven 存储库

    我的目的是使用我的本地 Nexus 安装代理 Roo Maven 存储库 以便它将包含 Roo 1 2 0 RELEASE 包 On http static springsource org spring roo reference htm
  • 如何使用 CruiseControl.NET 和 MSBuild 部署/发布 Web 应用程序?

    如何使用 CruiseControl NET 和 MSBuild 部署 发布 Web 应用程序 我是 CCNET 新手 我能够从 SVN 获取最新源代码并使用 MSBuild 3 5 进行构建 如何将网站发布到另一台 开发 服务器 感谢您的
  • Google 地图 API 与地理编码器的问题

    我认为我只是做了一些愚蠢的事情 因为我的 JavaScript 技能不是最好的 以下代码生成一个空白的灰色地图 function initialize directionsDisplay new google maps Directions
  • Swift OneSignal OSPermissionSubscriptionState setSubscription

    我已经更新了我的 cocoapods 但 OneSignal 出现错误 ERROR S 类型 OneSignal 没有成员 setSubscription OneSignal setSubscription true 在范围内找不到类型 O
  • 在 cv2 Python 中克隆图像

    我是 OpenCV 新手 作用相同的Python函数是什么简历 克隆 in C 我只是想通过 rectImg img 10 20 10 20 但是当我在上面画一条线时 我发现这条线同时出现在img和 rectImage 那么 我怎样才能完成
  • 如何访问 Blazor WebAssembly 中的应用程序设置

    我当前正在尝试将 api url 保存在应用程序设置中 但是 configuration Properties似乎是空的 我不确定如何获取该设置 在程序 cs中 public static async Task Main string ar
  • 忽略 webview 中的 ssl 证书请求

    我制作了一个小应用程序 其中涉及aspx 页面 https noor moe gov sa 我尝试打开它并抛出我的网络视图 但我得到了空白屏幕 我尝试用 Chrome 浏览器打开它 它给了我所需的证书 我的代码非常简单我添加了一些文档来解释
  • n 维向量

    假设我想声明一个向量的向量的向量的向量 最多 n 维 Like so using namespace std for n 2 vector
  • 为什么 Verilog 不被视为编程语言? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 教授在课堂上说学生不应该说他们学会了用Verilog 编程 他说 Verilog 之类的东西不是用来编程的 而是用来设计的 那么 Verilog