接下来一连好几天,几个人都奋力的在研究指令集的工作方式和相关的微码、机器码等相关知识。
而程旭也没闲着,他也在整理着自己的思路。
指令集系统他心里当然是有数的,从现有的固定指令指令集到可变指令、随即指令、成长指令一直到进化指令指令系统他在前世都有所思考,甚至形成一套理论体系。
而这,甚至是在荷泵理论实验成功之前就系统思考过的。
这也是程旭的习惯之一——当研究停滞没有思路或者想换换脑子的时候,他就会假设这项研究已经成功,然后思考成功之后要做的事情或者需要提前准备的东西。
在他电脑E盘那个庞大的文件夹里,就有很大一部分类似的设想内容。
这就像买了一张彩票,还没开奖呢,就在计划如果中了奖,奖金怎么去花了。
当然,彩票中奖这个事儿虚无缥缈不靠谱,而研究成果的出现很多时候是水到渠成的——这样的思考和想法并非全无益处,很多时候真的用的上。
而重新来过之后,他没事儿的时候也会尽力的回想,把很多曾经的很多想法都一一的又记录了下来,这其中就包括曾经关于指令集升级进化的一系列想法。
程旭又翻开了那个文件夹,不过这次并不是要看后来自己对指令集的成熟思路。
而是想看看当初大一的时候,第一次冒出“仿钠钾泵”这个想法的时候,自己关于指令集是怎么考虑的。
那个时候的考虑可能更贴近现在实验室里这几个人的思路。
……
“旭哥,我有一个问题。”
“嗯,”程旭看是齐玉鑫,随即点了点头:“你说。”
“现有的指令集系统,全是基于二进制的。就像这个加法指令:【addx9,x20,x21】,add指令的字段是【0000000,rs2,rs1……】,总结出来,最后的机器码就是【0000000】。
而我们的体系,是多值逻辑和自进位判定,指令也不是二进制的,甚至不知道是什么进制的,那这一点在指令系统的设计中该如何来体现呢?”
“好,”程旭拍了拍手:“大家都过来一下。”
“齐玉鑫的疑惑,你们是不是都有?”
“嗯。”几个人不约而同的点了点头。
“那RISC-V的指令系统研究的怎么样了?”程旭笑了笑:“五天了,差不多了吧?”
一听这话,几个人瞬间抓耳挠腮起来,说不懂吧,确实懂点儿,说懂吧,又不完全懂。
“这样就差不多了,”程旭鼓励着:“光看不练,是永远也学不精通的,上手之后慢慢的就懂了。
“你们知道,我们的体系是基于【多值和自进位】逻辑的,但,不可否认的是,固定逻辑的处理速度是最快的,所以,在固定数值的运算中,还是使用固定指令集。
“多值和自进位逻辑更多的用于处理未知和待定,处理判断和思考。
“但多值和自进位的机器指令该如何设计,这个问题齐玉鑫提出来了,你们也都有这个困惑,那就先说说你们自己的想法。”
程旭循序渐进的,仿佛已经成了老教授一般,几个人也都有这样的感觉,他接着说道:
“齐玉鑫,既然你提出的这个问题,一定思考过,你先说说你的想法。”
“我有一个想法,但是有点儿异想天开。”齐玉鑫顿了顿,看向了程旭。