- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
有谁知道如何在 ZedBoard 下面的 ARM 文档网站上实现运行“安全世界”和“正常世界”的 TrustZone 示例?有关此主题的任何文档(在 ZedBoard 上运行 TrustZone)也会有所帮助。
http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.faqs/ka15417.html
ZedBoard 具有 Xilinx:Zynq® -7000 All Programmable SoC Dual ARM® Cortex™-A9 MPCore™。可以在此处找到有关 ZedBoard 的更多信息:
最佳答案
这是一个广泛的话题。希望以下一些信息会有所帮助。
首先,稍微解释一下术语,SOC == 片上系统。
如果您可以访问 Xilinx 工具链,电路板制造商 Digilent 会为您的电路板提供一些支持文件。所以首先,如果你去 http://www.digilentinc.com/Products/Detail.cfm?NavPath=2,400,1028&Prod=ZEDBOARD ,在底部,您会发现两个名为“ISE 的 Linux 硬件设计”<版本号> 的文件。
同时假设您正在使用 Xilinx 开发工具,如果您浏览至 Xilinx/<版本号>/ISE_DS/EDK/hw/XilinxProcessorIPLib/pcores/axi_interconnect_v1_06_a/doc/ds768_axi_interconnect.pdf,您将找到有关 AXI 中断的信息您的电路板使用的 Controller 。这包括它支持 TrustZone 以及实际使用它的一些信息。
接下来,如果您转到 http://zedboard.org/content/creating-custom-peripheral ,您会找到一些关于制作“外围”设备的说明。我把它放在引号中是因为该设备实际上完全存在于可编程逻辑中;它不是您插入微型 USB 端口的东西,也不是您传统上认为的“外围设备”。
在教程的最后,还有一个链接可以帮助您从外围设备读取数据。
如果您对最初下载的 zip 中包含的 system.xmp 文件重复所有这些步骤,您会发现所有繁重的工作都已为您完成。您已经插入并准备好在 AXI 总线上运行中断 Controller ,该 Controller 已经与 TrustZone 一起工作,准备就绪并等待您将一个小的 hello world 设备连接到它。
但是你打算用这个 hello world 设备做什么?如果您查看链接到的教程的程序集,您会在评论中看到他们谈论了很多关于“安全配置寄存器”的东西。如果您查看处理器的文档(在此处的资源部分中,http://www.arm.com/products/processors/cortex-a/cortex-a9.php)并搜索术语“TrustZone 扩展”(当前第 34 页,但显然这可能会发生变化),您会找到一个指向另一个页面的链接,详细说明了这一点登记。这与他们在教程中使用的寄存器相同,因此理论上,如果您设置了受信任的执行环境,您现在可以使 hello world 教程正常工作(主要是;您可能想要做他们在使用 vhdl 或 verilog 代码进行汇编,并将结果公开在易于用 C 语言阅读的地方。
现在我刚才提到的一切只会让您访问 AXI 总线中的 TrustZone 数据。为了用这个做任何有趣的事情,你将不得不实际创建一个安全的世界和正常的世界来读取。否则,您放在一起的任何演示只会打印“Hello from Secure World”(或功能不正确)。因此,在这里解压缩您链接到的教程并真正阅读它们的源代码将会带来好处。
尽管到目前为止我的回答也不完整,因为您链接的 Hello World 教程并不是为了教您如何创建普通世界(可能还有监视器世界)而设计的。它在 ReadMe.txt 中明确说明了这一点。所以阅读源代码不会帮助你。为此,您将需要链接 http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.prd29-genc-009492c/index.html .那里有很多信息,但它只是作为引用,前两章,在我看来,就是我喜欢称之为“可跳过的 flavor 文本”。尽管如果您确实有时间浪费一些时间,但就一般的安全理论而言,它是引人入胜且内容丰富的。第 3 章将开始教您如何为 TrustZone 进行开发。
但希望我提供的信息能将这转变为对您而言较少的权限问题,而更多地转变为教育问题。我仍在自学这方面的知识。
关于arm - 在 ZedBoard 上运行“ARM TrustZone Secure/Normal world”示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16688559/
我是新 ZedBoard。我的 ZedBoard 在 Xilinx Linux 2015.4 上运行(手动编译的 devicetree.dtb、boot.bin 和 uImage;其他文件来自带有预编
我已经在 Zedboard 上实现了 C++ 代码。它编译和运行完美,但现在我想检查性能以优化某些功能。我在这里 ( Testing the performance of a C++ app ) 和这
dummy_rocc 是 RISCV 工具中一个简单的内置 RoCC 加速器示例,其中定义了多个 custom0 指令。设置 dummy_rocc 后(在 Spike ISA 模拟器或 Rocket-
有谁知道如何在 ZedBoard 下面的 ARM 文档网站上实现运行“安全世界”和“正常世界”的 TrustZone 示例?有关此主题的任何文档(在 ZedBoard 上运行 TrustZone)也会
我是一名优秀的程序员,十分优秀!