返回第321章 从零开始的「长城二號」  穿越59,开局获得签到系统首页

关灯 护眼     字体:

上一页 目录 没有了

陈启明在白板上画著框图,“算术逻辑单元、寄存器堆、指令解码器、控制单元……小陈,你对哪块最熟?”

陈星老实说:“我都……都不熟。书上只讲了原理,没讲具体设计。”

旁边一个年轻技术员笑了:“那你来干什么?”

“小刘!”陈启明瞪了他一眼,转向陈星,“没关係,谁都是从不会开始的。”

“这样,你先跟我做指令集设计。这是晶片的灵魂,也是最考验设计功力的地方。”

他递给陈星一本厚厚的笔记:“这是我这些年收集的intel 8080指令集分析,还有z80的一些资料。你先看,有问题隨时问我。”

陈星接过笔记,沉甸甸的。

翻开第一页,工整的字跡,详细的注释,还有手绘的时序图。

“陈老师,这……”

“叫老陈就行。”陈启明拍拍他肩膀,“抓紧看,下午咱们要开討论会。”

“记住,咱们不是简单仿製,是要设计自己的指令集。”

“既要考虑兼容性,又要考虑扩展性,还要考虑易用性。这可是个大学问。”

整个上午,陈星都泡在那本笔记里。

他像一块乾渴的海绵,疯狂吸收著知识。

很多概念他第一次接触。

寻址方式、中断处理、流水线设计。

但他强迫自己理解,不懂就问,问陈启明,问组里其他人。

午饭时,他端著饭盒,一边吃一边看笔记。

杨振华坐过来,看了眼他正在看的內容。

“指令编码这一章?”杨振华问。

“嗯,看不懂。”陈星老实说,“为什么要设计这么多寻址方式?直接寻址、间接寻址、立即寻址、变址寻址……太复杂了。”

“为了灵活。”杨振华拿过他的笔,在桌上画起来,“你看,假如你要处理一个数组。”

“如果用直接寻址,你得知道每个元素的具体地址,太麻烦。”

“但用变址寻址,只需要一个基地址,一个偏移量,循环起来方便多了。”

他简单几笔,画出了一个循环读取数组的示例。

陈星恍然大悟:“原来是这样……那中断又是为什么?”

“让cpu能同时处理多个任务。”杨振华继续画,“比如你在计算,突然有键盘输入。”

“如果没有中断,你得不停地去查键盘有没有按,浪费cpu时间。”

“有了中断,键盘按下去,发个信號,cpu暂停手头工作,先去处理输入,处理完再回来继续计算。”

“我明白了!”陈星眼睛发亮,“就像……就像一个人本来在看书,突然电话响了,他接完电话再回来看书。”

“对,就是这个意思。”杨振华笑了,“你很会比喻。搞技术的人,有时候缺的就是这种把复杂问题简单化的能力。”

陈星不好意思地挠挠头:“我是真不懂,所以只能想些土办法理解。”

“土办法才是好办法。”杨振华认真说,“技术归根结底,是为了解决实际问题。能解决问题的办法,就是好办法。”

吃完饭,陈星继续看笔记。

下午的討论会,他坐在角落里,认真听,拼命记。

討论很激烈。

关於指令集应该设计多少条指令,大家爭得面红耳赤。

“指令越多,功能越强!”一个技术员说。

“但电路越复杂,成本越高,出错概率越大!”另一个反驳。

“要兼顾,既不能太少,也不能太多……”

陈启明听著,偶尔插话引导,但大多数时间让年轻人自己爭论。

等大家吵得差不多了,他才开口:“小陈,你说说看。”

所有人都看向陈星。

陈星愣住了。

他一个新人,刚来第一天,哪有资格在这种问题上发言?

“別怕,想到什么说什么。”陈启明鼓励道。

陈星深吸一口气,站起来。

他想起在陕北的日子,想起老乡们用算盘算帐的样子。

“我……我觉得,指令就像工具。”他慢慢说,“一个木匠,不需要一百种刨子,但常用的那几种必须好用。”

“咱们设计指令集,是不是也应该这样?”

“最常用的操作,比如加减乘除、数据搬运、逻辑判断,这些指令要设计得高效、快速。、”

“不常用的操作,可以简化,甚至不要。”

他顿了顿,声音更坚定了些:“我在农村,看老乡们用算盘。”

“算盘只有加减乘除,但能解决大多数问题。太复杂的计算,他们也不用算盘,用笔算。”

“晶片是不是也可以这样?把基础功能做扎实,复杂功能让软体去实现?”

会议室里安静了几秒。

杨振华第一个鼓掌:“说得好!这就是risc思想的前身。精简指令集。虽然现在国际上流行cisc,但你这个思路,很有前瞻性。”

陈启明也点头:“小陈这个比喻很形象。指令集不是越复杂越好,是要好用。好用的標准是什么?是让编程的人舒服,让晶片跑得快。”

討论继续,但方向清晰了很多。

陈星的话像一颗石子,让爭论的漩涡找到了出口。

散会时,陈启明叫住陈星:“今天表现不错。晚上有空吗?”

“有!”

“来我办公室,我给你补补课。指令集设计,门道多著呢。”

“谢谢陈老师!”

“说了叫老陈。”陈启明笑著走了。

晚上八点,陈星敲开陈启明办公室的门。

屋里堆满了书和图纸,几乎没有下脚的地方。

陈启明正在一张大图纸上画著什么,见他进来,招招手:“过来,看这个。”

那是一张极其复杂的晶片布局图,上面密密麻麻的线条,像一座微缩城市。

“这就是『长城一號』的版图。”陈启明说,“2300个电晶体,咱们花了两年时间。现在要做5000个,你觉得关键在哪里?”

陈星仔细看著图纸,许久才说:“布线……布线太复杂了。”

“对!”陈启明一拍桌子,“就是布线。电晶体可以画小,但线不能太细,否则电阻大,容易断。线不能太密,否则干扰大。线不能太长,否则延迟大。”

他抽出一张白纸,开始画:“所以咱们得重新设计单元库。把常用的逻辑门。与门、或门、非门、触发器。做成標准模块,像搭积木一样组合。每个模块的接口要规范,这样布线才容易。”

他一边画一边讲,从电晶体原理讲到版图设计,从功耗计算讲到时序分析。

陈星听得如饥似渴,遇到不懂的就问,陈启明也不厌其烦地解释。

讲到夜里十一点,陈启明忽然停下:“差不多了,今天先到这儿。你回去消化消化,明天继续。”

陈星站起来,深深鞠躬:“谢谢陈老师!”

“说了叫老陈。”陈启明摆摆手,“赶紧回去休息,明天任务更重。”

走出办公楼,夜风很冷。

但陈星心里是热的。

他抬头看天,北京的夜空比陕北明亮得多,能看到更多的星星。那些星星有的亮,有的暗,有的聚成团,有的孤零零。

他想,自己现在就像其中一颗。

也许不是最亮的,但至少发光了。

回到宿舍,同屋的另外三个人都回来了。

都是年轻人,一个来自清华,一个来自北大,还有一个从上海微电子所调来的。

“你就是陈星?”清华的那个上下打量他,“听说你是自学成才?”

“谈不上成才,还在学。”陈星老实说。

“別谦虚了。”北大的那个递给他一个苹果,“赵总工特招的人,肯定有两把刷子。以后多指教。”

上海来的那个推了推眼镜:“听说你懂电路设计?我正好有个问题……”

四个人围在一起,討论起技术问题。

苹果在桌上传来传去,谁渴了咬一口。

图纸摊了满床,铅笔在纸上沙沙作响。

夜深了,楼管来催熄灯。他们才意犹未尽地收拾。

躺在黑暗里,陈星睡不著。

他想起了陕北的窑洞,想起煤油灯下那半本破书,想起队长恨铁不成钢的眼神,想起爹信里“安分守己”的嘱咐。

如果那时放弃了,现在会怎样?

大概还在黄土高原上,日出而作,日落而息,等著不知道什么时候才能到来的回城机会。

但现在,他在这里。在中国计算机技术的核心,参与著一个伟大项目的起步。

这一切,像梦,又不是梦。

隔壁床传来轻微的鼾声。陈星翻了个身,看著窗外透进来的月光。

他想,这就是科学的春天吧。

不是阳光普照的温暖,而是冰雪消融时,种子在冻土下积蓄力量,等待破土而出的那一刻。

而他,就是其中一颗种子。

虽然小,虽然不起眼,但终究,发芽了。

闭上眼睛时,陈星默默许了个愿:三年后,当“长城二號”成功的那天,他要回陕北一趟,告诉队长,告诉爹,告诉所有说他“不务正业”的人。

看,这条路,我走通了。

不只是我,还有千千万万像我一样的人,都在走。

走一条从零开始的路。

走一条中国人自己的路。

『加入书签,方便阅读』

上一页 目录 没有了