技术博客
主板上这家伙,要当 CPU 和内存的中间商
admin2022-11-11 05:30
212人已围观
简介主板上这家伙,要当 CPU 和内存的中间商
本文来自微信公众号:编程技术宇宙 (ID:xuanyuancoding),作者:轩辕之风 O
我是内存条
我是一个内存条,刚刚从深圳的一个工厂里被生产出来,跟我一起的还有一批小伙伴,长得跟我一模一样,下了流水线后我们就被扔进了一处黑暗的角落。
“这是哪里啊,黑漆漆的”,一个小伙伴说到。
“这里是内存条仓库”,黑暗中有人在说话,声音中略有一丝沧桑,像是一个老头。
“谁?谁在那里”
“别怕,我也是一个内存条,比你们早几个月被生产出来”,那老头说到。
“啥,你都被关在这里几个月了,完了完了”,小伙伴急了。
“不是的,我出去过,后来被发现是残次品,又被回收了关在了这里,你们跟我不一样,刚刚生产出来,应该很快就能出去,被安装到电脑主板上,实现你们的价值。”
“电脑主板?那是什么地方?”,我好奇的问到。
那声音继续说到:“那是计算机最核心的地方,是一个巨大的电路板,上面住着 CPU、硬盘、网卡、显卡、声卡,当然,还有我们内存条。计算机必须有我们才能正常运转,因为 CPU 工作需要的指令和数据都存储在咱们内存中”
刚说完,我们身边亮起了灯光,这时,我们才看清我和小伙伴们的样子。
“我们身上那几块黑乎乎的东西是什么,真是有点拉低颜值啊!”
“你可别小瞧了它们,那可是咱们内存条的核心存储芯片,我们的数据都是放在这里面的,它们一个就是 1GB,总共 16 个,就是 16GB 的空间呢!”,那老头又开口说到。
奇怪的是,我们还是看不到他。
“你在哪里,怎么亮了灯还是看不到你呢?”,一个小伙伴问到。
“我在隔壁的柜子里,像我这种残次品估计是没机会出去了”
“你刚才说 16 个存储芯片,这不是明明只有 8 个吗?”
“你转过身去看看,背上还有 8 个呢”
我们几个纷纷转身看去,果然如此。
老头继续说到:“除了存储芯片,还有 PCB 电路板和金手指,这三部分共同构成了我们的身体。”
“金手指是什么东西?”
“就是脚下那一排土豪金颜色的部分了,那是我们连接主板插槽的接触点,一面有 120 个,两面就是 240 个,因为每个点看起来像手指,人们就把这叫做金手指了”。
“那为什么中间留了一个缺口呢?”
“我们的每个金手指都有不同的功能,正反面可不能弄混,为了防止愚蠢的人类把我们插错,所以中间留了一个缺口,要是弄反了可是插不进去的。通过主板上的电路,我们就能接通到计算机的总线系统上,可以和 CPU 对话了。”
原来如此,我们都若有所思的点点头。
数据存储
接下来,这位老头还讲了很多我们内存条先辈的故事。
原来,我们还有一个更专业的名字:RAM,随机存储器,因为我们可以随意读写任意位置的数据。
老头还说,现在计算机基本上都是二进制的,不管什么样的数据或者代码指令,在我们这里都是一串串的 0 和 1 的比特位。
为了存储这一个比特位,我们的先辈们可是费了不少功夫!
曾经有两种电路方案摆在先辈们的面前,第一种是静态方案:
是不是很复杂?我也觉得。这种电路方案的好处是可以稳定的维持在 0 和 1 之间的某个状态,所以叫静态 SRAM。
但是需要用到的晶体管实在太多了,一个比特位就要用好几个晶体管,16GB 那得用多少才够啊,成本太高了,造出来我们的个头肯定会特别大,主板上空间这么局促,哪里装得下啊。
先辈们没有选择这种方案,用了第二种方案:
看,是不是简单了许多?通过一个电容器的电荷就能决定这是一个 1 还是一个 0。
在我们身上的每一个存储芯片里,这样的比特位存储单元都有很多:
再缩小一下看,它们密密麻麻的排列着,每一个位都由行地址和列地址来确定的:
但这种电路方案有个毛病,就是里面的那个电容会“漏电”,电容中的电荷会慢慢消失,电压也就变小了,这样就没办法区分这是表示的 1 还是 0 了,为了解决这个问题,必须得周期性的去给它们充电,才能维持数据的稳定,这叫动态数据刷新,所以这种方案叫动态 DRAM。
内存编址
老头正给我们讲的兴起,突然有人把我们打包起来,所有的小伙伴都被分开了。
又经过了好长一段日子的黑暗和孤独,那一天突然咔嚓一声,我的金手指和卡槽连接了起来,难道这就是传说中的主板吗?
“你就是内存啊,我们可等你好久了,你来了我们总算可以开始工作了!”,旁边一个家伙跟我打起了招呼。
“你哪位啊?”
“你好,我是 CPU 里的阿 Q,你看就在你隔壁,咱们以后少不了要天天打交道了。对了,快告诉我,你有多大存储空间?”
我检查了一下,回答道:“我有 16GB 空间,也就是 137438953472 个比特位!”
“哇,这么多!太给力了!不过我该怎么使用你来存储数据呢?”
“这简单,你要访问哪个 bit 位,告诉我芯片号、bank 号、行地址、列地址,我把数据取给你不就行了吗!”
“怎么这么麻烦?你这不讲武德啊,这些内部细节应该封装一下啊,提供给我一个简单接口就是了”,阿 Q 吐槽道。
“两位大哥,看这里”,这时,主板上不远处又有一个家伙开口了。
“你是谁?”我和阿 Q 异口同声的问到。
这家伙眯着眼说到:“我是内存控制器,专门为二位服务的。”
“啥,你要控制我?”
“您别误会,我就是一个中介,为两位提供服务而已”
见我俩一头雾水,这家伙接着说到:“内存老哥,你的存储数据电路单元中的电容是不是经常漏电,需要定时刷新?而且按照规定,最多 64ms 就得要刷新一次?你放心,这数据刷新的工作以后就交给我了”
“你怎么知道的?”
这家伙笑了笑继续说道:“这算啥,我还知道你的数据存储在你身上的每一个存储芯片之上,每一个芯片里面又分了很多个分片,每个分片里面又有很多的比特位存储格子。想要访问哪个比特位,就得指定对应的芯片、对应的分片、对应格子的行地址和列地址,我说的对不对?”
我点了点头,没想到这家伙居然对我了解的这么清楚。
“阿 Q 啊,你们 CPU 这边想要访问数据,肯定不想这么麻烦吧?”,这家伙笑着问到。
“那当然!”
“所以啊,我就派上用场了啊,用比特位作为读写单元太麻烦了,咱们按 8 个比特位为一组,叫做一个字节,你们 CPU 这边统一给内存兄弟的存储空间编址,以后要读取数据的时候呢,就把地址交给我,我再告诉内存兄弟具体是读写哪个芯片哪个分片的哪些位置,怎么样,是不是为你们解决了大麻烦?”,说完,内存控制器露出了得意的笑容。
“听上去不错啊,咱们开始吧!”
“现在还不行,还没通电呢!”
不过我们没等太久,就听见一阵嘶嘶声响,来电了!
随后我们就开始配合工作起来,初次见面,合作的就非常顺利,CPU 对我所有的存储位按照字节为单位进行了统一编址,以后只需要一个地址,内存控制器就转换成具体的数据存储位置交给我,我再完成读写操作就可以了。
后来,看到内存控制器表现非常不错,在阿 Q 的牵线下,还把他集成到了 CPU 内部,现在成为了他们的一份子了!
我和 CPU 一直相处的不错,可没过多久,他们居然开始嫌我慢了,要说慢,硬盘那家伙可比我慢多了!
他们发现拿我没有办法,于是在 CPU 内部又搞了个缓存出来,不用每次都问我要数据,倒是给我省了不少工作量。
我的日子就这样过着,本以为就要在这主板上干到退休了,没想到那一天,一个浏览器程序告诉我说:“内存大哥你完了,刚刚我看到主人在网上买新的 DDR4 内存条,你要被淘汰了”
难道我也要被打入小黑屋了吗?

微信公众号
很赞哦!(0)
相关文章
文章评论
评论0
站点信息
- 微信公众号:扫描二维码,关注我们

点击排行

标签云
-
php
网页设计
个人博客
JS
个人博客
Html
春节必看: 2020新春红包大战 全攻略
新增详细玩法攻略!
支付宝集五福5亿集分宝招商银行抽现金券抖
抖音 2020 发财中国年 攻略
支付宝集五福5亿集分宝招商银行抽现金券抖
最近购买威尔胜WTB0900复刻版和WT
mysql慢查询和php-fpm慢日志
PSR-2
基础代码规范
Thinkphp
响应式
公司
整站
源码
网络科技网站模板
1024
节日
百度收录
论坛
社区
2020
豆瓣
评分最高
电影
debugger
调试
Python
语法
高德
百度地图
MySQL
追寻
webpack
vue
oracle
服务器搭建
有趣
动物
人体
历史
天文
生活
名人
体育
地理
文化
科学
心理
植物
饮食
自然
图片
JVM
IDEA
Loader
Git
UNIAPP
股票
A股
同花顺
海尔
海天味业
半年报
股市总结
歌尔股份
乐普医疗
涪陵榨菜
餐饮
财报分析
酒店
年报分析
美锦能源
山煤国际
贵州茅台
张坤
腾讯
华鲁恒升
淮北矿业
药明康德
早盘关注
国电电力
北方华创
宝丰能源
TCL中环
兔宝宝
天润乳业
启明星辰
阳光电源
山西汾酒
迈瑞医疗
人福医药
比亚迪
宁德时代
汤臣倍健
伊利股份
通威股份
东鹏饮料
隆基股份
紫金矿业
五粮液
康龙化成
赣锋锂业
爱尔眼科
片仔癀
VR
永新股份
爱美客
美的集团
格力电器
科沃斯
云南白药
同仁堂
洋河股份
白云山
三体
狂飙 原著