关注 硬件 发展, 转载一篇介绍 VHDL 的文章
《VHDL学习笔记》
https://www.eefocus.com/hrbeulvcaho/blog/12-11/289109_978e2.html
VHDL 和 “可编程逻辑阵列” 等 硬件技术 的 发展, 未来 硬件层 的 地位 会 不一样, 工作内容 也会 更丰富 。
说实在的, 没必要 担心 摩尔定律 失效, CPU 的 能力 现在 实际上 并没有 得到 太大 的 利用 。
有很多 因素 左右 着 计算机 的 执行速度 。
比如, 无阻塞模式, 可以参考《无阻塞 编程模型》 https://www.cnblogs.com/KSongKing/p/10287882.html,
又比如 三级缓存 对于 线程切换性能消耗 的 影响, 可以参考《后线程时代 的 应用程序 架构》 https://www.cnblogs.com/KSongKing/p/10228842.html,
还有就是 今天 说的 VHDL, VHDL + “可编程逻辑阵列” 是 复杂指令集 思想 的 解放式 发展 。
将 越来越多 的 逻辑 放到 一个 指令 里 执行,
如果从 程序 设计的角度, 从 软件 的 角度, VHDL 和 “可编程逻辑阵列” 可以看作 是 一个 超级高效 的 库(Lib),
VHDL 和 “可编程逻辑阵列” 可以为 开发人员 提供 高速 的 API,
这个 API 可以是 图形处理 、 图像处理 、 人工智能 以及 操作系统 内核 操作 , 以及 各方各面 的 业务需求 。
事实上 操作系统 已经在 用 这个原理了, 比如 操作系统 虚拟内存 的 管理工作 就是通过 CPU 的 “存储管理部件” 实现的 。
VHDL 和 “可编程逻辑阵列” 的 应用领域 在 未来 可能 非常 广泛,
比如 数据库 也可以 利用 这个 硬件编程 的 福利,
可以设想 有一些 数据库 操作 的 “宏指令” (宏指令 这个名字 是 和 微指令 相对, 在 VHDL 下, 一个 宏指令 由 非常多 的 微指令 组成),
在 VHDL 下, 可以设计一个 很大 的 电路 作为 一条 宏指令,
这个 电路 里包含了 很大 的 电子存储器, 以及 执行 遍历, Hash, 排序 的 逻辑电路,
这样的 宏指令 可以用于 数据库 。
所以, 通过 以上 的 种种方式, 通过 硬件 的 “多样化” 、 “职能复杂化”, 同样 可以 保持 摩尔定律 继续有效 。
不一定 只有 更加 微观 的 制造工艺 。
通过 上面 的 想象, 我们发现, 如果从 “大处着眼” 硬件执行速度 的 发展 的话, 会发现 有一个 重要的关系 关系 到 摩尔定律 的 继续 有效 。
这个 关系 就是 CPU 和 内存 的 关系 。
CPU 和 内存 离 的 越近, 离 CPU 近 的 内存 越大, 则 执行速度 越快 。
如果 从 广义 上来讲, 这个 关系 可以说是 逻辑电路 和 存储器电路 的 关系 。
CPU 是 中央处理器, 必须保持 高速运行,
但是 可以 把 一些 “业务性” 的 职能 分离 出来, 这些 业务性 的 逻辑电路 可以 独立出来, 放在 和 CPU 相对较远 的 地方,
因为 和 CPU 相对较远, 所以 可以 采用 和 CPU 不同的 制造工艺,
这样 在 技术上 就可能 让 这块 业务逻辑电路 拥有 比 CPU Cache 大的多 的 高速存储器 。
将 各种 职能 分离出来, 变成 独立 的 逻辑电路, 同时 让 这个 逻辑电路 拥有 大容量 的 高速内存,
这可以 让 摩尔定律 继续有效 。
这也是 并行计算 的 思想 。
附上 网友 发的 一幅图, 这个 图 挺清楚的 :

关注 硬件 发展, 转载一篇介绍 VHDL 的文章的更多相关文章
- 《转载-两篇很好的文章整合》Android中自定义控件
两篇很好的文章,有相互借鉴的地方,整合到一起收藏 分别转载自:http://blog.csdn.net/xu_fu/article/details/7829721 http://www.cnblogs ...
- 转载一篇介绍CUDA
鉴于自己的毕设需要使用GPU CUDA这项技术,想找一本入门的教材,选择了Jason Sanders等所著的书<CUDA By Example an Introduction to Genera ...
- 上一篇括号配对让人联想起catalan数,顺便转载一篇归纳的还不错的文章
转载请注明来自souldak,微博:@evagle 怎么样才是合法的组合? 只要每一时刻保证左括号的数目>=右括号的数目即可. 直接递归就行,每次递归加一个括号,左括号只要还有就能加,右括号要保 ...
- 国内首篇介绍JanOS物联网操作系统的文章 - 如何把你的手机主板打造成物联网平台
天地会珠海分舵注:如无意外,您现在正在看的将是国内首篇且是唯一一篇介绍炙手可热的物联网的操作系统JanOS的文章!不信你去百度!希望大家能喜欢.但本文只是引言,更多信息请还是访问JanOS的官网:ht ...
- Java并发包下锁学习第一篇:介绍及学习安排
Java并发包下锁学习第一篇:介绍及学习安排 在Java并发编程中,实现锁的方式有两种,分别是:可以使用同步锁(synchronized关键字的锁),还有lock接口下的锁.从今天起,凯哥将带领大家一 ...
- spring cloud系列教程第一篇-介绍
spring cloud系列教程第一篇-介绍 前言: 现在Java招聘中最常见的是会微服务开发,微服务已经在国内火了几年了,而且也成了趋势了.那么,微服务只是指spring boot吗?当然不是了,微 ...
- 老猿学5G扫盲贴:推荐三篇介绍HTTP2协议相关的文章
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 5G中的服务化接口调用都是基于HTTP2协议的,老 ...
- (转)干货|这篇TensorFlow实例教程文章告诉你GANs为何引爆机器学习?(附源码)
干货|这篇TensorFlow实例教程文章告诉你GANs为何引爆机器学习?(附源码) 该博客来源自:https://mp.weixin.qq.com/s?__biz=MzA4NzE1NzYyMw==& ...
- 给B公司的一些建议(又一篇烂尾的文章)
感慨:太多太多的悲伤故事,发生在自己身上,发生在自己的身边.因此,为了避免总是走"弯路",走"错误"的道路,最近一直在完善自己的理论模型. 烂尾说明:本文是一篇 ...
随机推荐
- Eclipse几点常用设置+个人喜好
1.代码自动提示 在我们忘记方法名或者想偷懒时,代码自动提示很管用.不过Eclipse默认是输入"."后才会出现包或类成员的提示,也就意味着我们必须先输入一个完整的类名,提示才能出 ...
- <Spark><Introduction to Spark>
What Is Apache Spark? 速度方面:Spark扩展了MapReduce模型,可以更高效地提供多种类型的计算,包括交互式查询和流处理.Spark为speed所提供的最大能力就是内存计算 ...
- day 67 django orm的基础
django项目 安装: 创建项目 配置(setting,static,csrf) 创建app,python manage.py startapp app1 三部分 urls.py路由配置 1,普通正 ...
- python,monkey-patch【猴子补丁】
用来运行时动态修改已有的代码,而不需要修改原始代码,在gevent[协程]中.会在开头的地方gevent.monkey.patch_all(),把标准库中thead.sockcet等给替换掉,这样我们 ...
- python flask实现小项目方法
本文目的是为了完成一个项目用到的flask基本知识,例子会逐渐加深.最好对着源码,一步一步走. 下载源码,运行 pip install -r requirements.txt 建立环境 python ...
- HDU 6140 17多校8 Hybrid Crystals(思维题)
题目传送: Hybrid Crystals Problem Description > Kyber crystals, also called the living crystal or sim ...
- Netty核心概念
一个Netty程序始于Bootstrap类,Bootstrap类是Netty提供的一个可以通过简单配置来设置或“引导”程序的一个重要的类.Netty中设计了Handlers来处理特定的"ev ...
- JavaWeb基础知识总结
JavaWeb基础知识总结. 1.web服务器与HTTP协议 Web服务器 l WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. l Internet上供 ...
- SQL注入之Sqli-labs系列第九关和第十关(基于时间盲注的注入)
开始挑战第九关(Blind- Time based- Single Quotes- String)和第十关( Blind- Time based- Double Quotes- String) gog ...
- 【转】C++类内存分布
C++类内存分布 https://www.cnblogs.com/jerry19880126/p/3616999.html 书上类继承相关章节到这里就结束了,这里不妨说下C++内存分布结构,我们来看 ...