今天小编要和大家分享的是处理器,DSP相关信息,接下来我将从软件中的硬件问题怎样解决比较好,寄存器(内存访问)ppt这几个方面来介绍。

处理器,DSP相关技术文章软件中的硬件问题怎样解决比较好寄存器(内存访问)ppt

处理器,DSP相关技术文章软件中的硬件问题怎样解决比较好

硬件和软件的开发过程似乎有些相似:发布了需求规范;精心设计;结果使用一种特殊的语言进行编码(用于硬件的HDL和用于软件的编程语言)。但是相似之处到此为止。

启动硬件生产时,硬件设计会在某些时候冻结。在此之后进行更改通常会很麻烦且昂贵。另一方面,软件永远不会完成。调整和完善将持续到最后一刻。调整代码并进行重建非常容易。这既是优点也是缺点。

由于软件可以延展性强,因此有机会进行广泛的测试并修复仍然存在的错误。灵活性的不利之处在于,人们倾向于在最后时刻进行增强和完善。“蠕动的优雅”是真正的危险。这些挑战都是与软件相关的,但情况越来越糟……

如果在冻结设计后检测到硬件错误怎么办?

硬件问题通常昂贵且处理不便。一个非常常见的解决方案是“将其修复在软件中”。这样的修复可能是微不足道的,软件工程师应该很高兴能够为他们的硬件同行提供帮助。但是,在其他情况下,对代码的调整可能会完全损害软件设计。

设计中的错误与“怪异”之间存在一定程度的模糊性,“怪异”对于硬件开发人员来说并不奇怪,但需要包含在软件中。我们可以用一些示例来说明软件需要在哪些地方容纳硬件的怪异之处。

翻转位

嵌入式系统中最简单的输入设备是开关或按钮。凭直觉,可以预期处于“关闭”位置的开关(或未按下的按钮)将显示为0值,并在打开(或按下按钮)时转换为1。但是,在几乎所有情况下,情况都是相反的:关闭开关显示为1并转换为0。这是因为它简化了硬件设计,可以将输入引脚“上拉”为逻辑1并将其接地(下拉为0)。 )表示输入。当然,一旦开发人员对此有所了解,在软件中的容纳就变得微不足道了。

弹跳

关于开关或按钮的另一个自然期望是,它将仅在两种逻辑状态之间转换。但是,机械开关的行为通常不是很理想-触点闭合,然后弹跳开一次或多次,然后降落到闭合位置。此行为的结果是,预期的从1到0的过渡可能会快速连续地重复几次,未经检查,可能会被错误地解释。想象一下按下一个按钮会增加一个设置,但通常会将其增加2或3而不是1!