Qubic 状态更新——2018年12月

Qubic 状态更新——2018年12月

哇喔,愉快的时光总是转瞬即逝。

这段时间我们还是一直在研究Qubic Dispatcher。目前我们正在探索允许我们接驳缠结(接收/发送)的系统边界实体。我们还在研究Dispatcher插件系统,它允许独立通过Qubic Computation Model无缝连接实体,实现一同工作。

我们还对Abra进行了一些新的改进。其中之一是向语言本身添加浮点常量,以与AbraLib中的-now全功能浮点函数一起使用。浮点函数运行良好,我们决定从AbraLib中删除初始定点数学函数,还调整了预定义的浮点类型,使其在范围上更有意义:

type TinyFloat {
mantissa [Tiny]   // -/+ 9,841
exponent [Tryte]  // -/+ 3^13
}
type Float {        // slightly larger than IEEE 754 32-bit float
mantissa [Tiny2]  // -/+ 193,710,244
exponent [Tryte2] // -/+ 3^364
}
type Double {       // slightly larger than IEEE 754 64-bit double
mantissa [Tiny4]  // -/+ 75,047,317,648,499,560
exponent [Tiny]   // -/+ 3^9,841
}
type HugeFloat {
mantissa [Int2]   // -/+ 29,074,868,501,520,029,845,195,084
exponent [Tiny2]  // -/+ 3^193,710,244
}

Abra语言的另一个改进是添加了条件表达式操作。最初人们认为不可能实现这种操作,但对AbraLib代码库的分析表明可以采取这几种使用模式。通过引入条件表达式操作,可以隐式地表达这些模式中的一个,同时提高代码可读性并减少输入量。此外,在良好运行Abra语言范例中有一项很酷的全新优化,将自动提高显式使用此模式的代码效率。

在LLVM JIT编译方面,生成的代码的质量得到了很大改善。Lukas Tassanyi(MicroHash)独立撑起了这部分的工作,并且在解释器的改进方面也做了很多工作。他甚至提出了一个非常简单的概念验证理念,我们可以使用它来测试整个系统。但是,很抱歉,在没有完成这项工作前,我们不能透露任何信息。

在FPGA方面,我们能够生成几乎所有为FPGA生成代码所需的Verilog源代码。Donald为最终在FPGA中加载代码测试做出了很大的贡献。 从这些测试中返回的任何内容都将用于在必要时改进生成的Verilog代码。

Abra文档系列将会进一步修改以反映最新的变化,本系列的第6部分,关于Qubic Dispatcher及其与Qubic计算模型的交互,现在基本完成。

我们还花时间全局角度观察系统,以便我们更清楚地了解目前能做什么和不能做什么。当你进入开发的困局时,你有时会专注于解决下一个直接问题而忽略了整体性。因此,为了实现最终目标,从全局角度检视整个系统或其他组件的变化是一项利于系统健康的工作。对于这项工作的一些调查结果已经开始在内部讨论。一旦我们确定了需要修改进程,则会尽快对此进程做出沟通与处理。

 

原文链接:https://blog.iota.org/qubic-status-update-december-3rd-2018-30d233ffce72

tigermumu

专栏作者:tigermumu

个人简介:坚定不移的贯彻以推广和普及IOTA为核心一百年不动摇

作者邮箱 作者主页 Ta的文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注