我最近正在作一个面向底层的开发工作,具体上说,是围绕内存制造与测试的工作。
这个项目就是为很多内存制造商提供测试方案,用于快速的检测内存模组的测试。
应对众多厂家的要求,我需要在软件的界面上显示测试的环境信息,这包括 CPU 速度和
cache 信息,SDRAM 的速率,通道模式,时序信息。时序信息包括了 CL,tRCD,tRP,tRAS。
当然还包括内存测试方案的信息,和测试状态信息。
CPU 的大致信息,你可以通过 CPUID 指令获得,而亦可以用 rdtsc 读取系统的时间戳来算
到 CPU 的实时速率。这个方法对于大多数 CPU 都是可行的,少数不支持 CPUID 指令的就
是例外。
SDRAM 的信息大多数存储于主板的芯片组中,北桥的内存控制器管理着内存的工作方式和监
督其工作状态。拿 Intel 为例,自 945 以前的芯片组,其资料都是公开的,参照官方的
Intel Datasheet,你可以获得 PCI 设置参数的读取方法。所有的信息乃至支持的模组类型,
可控的时序范围都是可以读到的。大家用到的 CPU-Z,都应该是这样读到的。
然而,到了 965 时代,这一切都发生了改变。从 965 Datasheet 资料上看,这片资料也相
对比较完整。但是 Chipset 寄存器的组织结构却发生了变化,寄存器组的分工更加的明确
和正式化。按照原先的想法,这并没有什么不妥。毕竟 965 是转向 Intel 3 系列的实验板。
但是在我们用老的方法读取这些资料的时候,发现了一个大问题。按照 Datasheet 资料上
的描述,我们却完全读取不到正确的内存信息,后来发现,内存控制寄存器 MCHBAR 被锁住
了(disabled置高),用程序也无法解锁。这里好像僵住了。
在 Datasheet 中,唯一可以看到的就是 "Locked by Intel TXT mode"。这是 Intel 新出
的一中加密技术。相当长的时间里,我也无法找到加密的方法。
事情就这样过去了,在过一段时间。公司立刻也拿到了 Intel 3 系列的主板 G33,我们对
这块板子仍旧担心受怕。如果 Intel 仍旧将信息加密,我们无疑在这方面又会止步。恩,
G33 一样采用了 965 的组织结构,将内存信息同一管理,还继续往下分类为两个通道(for
DDR)。我们尝试用 945 的老方法读取 PCI 信息。恩??完全奏效,Intel 发了善心,并
没有封锁这段寄存器。我和同事兴高采烈的在 G33 Datasheet 中找取时序信息的描述。OMG,
我觉得 Intel 实在太不厚道了,他隐藏了非常多的资料。寄存器组中的数据很多都是
Reserved 状态,我们要的 CL 和 tRAS 就在其中!!!
寄存器有很多很多个,他们定义的空间非常大,MCHBAR 指向的空间就有 4Kb,CL 是极其重
要的参数,一旦变动会影响很多的参数,对其定位异常困难。这是另外一个僵局呢。
我使用过很多很多的软件,在很多网站上发帖请求帮助,通常总是无功而返,偶尔有人告诉
我,可以到 CPU-Z 官方论坛上。我想想也是,来看看 CPU-Z 是怎么样的呢?我使用
CPU-Z 作了很多实验,发现它也不能在 965 芯片下提供实时的时序参数。哈哈,你也没辙
了。但是在 G33 下面,CPU-Z 丝毫没有问题,我当时愣是无法明白。这资料是怎么找到的
呢?
后来我在 x86-secret 论坛上面遇到了一位朋友,我跟他说我在 G33 上遇到了些问题。他
当时就很兴奋:没有想到也有人作着同样的事情。而此时此刻他也碰到了同样的难题,他的
做法是选择向 Intel 官方寻求帮助。我地心来,这不是与虎谋皮么,他隐藏的资料,能告
诉你们?但是他却告诉我,他已经得到了官方的许诺,说是在两个工作日内给予回复。我只
有和这位老兄一起等待。
………………
几乎一个星期过去了,我终于等到这位仁兄的回复。他告诉我,Intel 的硬件设计师已经考
察了这个问题,他们回复说,这个问题是可以解决的,但是你必须和 Intel 签署一份 NDA
协议(Single-user Non-Disclosure Agreement),并且向其提供一份官方认证的发布名单,
保证我们遵守协议。
因此我们放弃了这个念头,基于此下两个原因:
1. 所谓官方认证的发布名单,必然是不会公开源代码的。
2. 即便我们想法设法签署到了 NDA 协议,我们也拿到了内存控制器的资料,我们也是不被
允许开放源代码的,否则我们就违反了 NDA 协议。
哎,搞了半天,Intel 可是在这里等着我们呢。
分享到:
相关推荐
- 该文档为机密文件,仅供已批准的 Intel 场地人员及已签署保密协议 (NDA) 的客户使用。 - 文档编号为 505292,发布日期为 2014 年 8 月 15 日。 通过以上内容可以看出,Intel® Atom™ Processor C2000 产品家族...
- **保密性**:文档开头强调了其保密性质,明确指出该文档仅在保密协议(NDA)下使用。这表明文档中包含的信息对于Intel来说非常重要且敏感。 - **商标和版权**:文档中提到了Intel及其标志是Intel Corporation或其...
重要的是,下载的SDK包无需解压,因为目前NXP官网并没有提供直接下载解压后的SDK选项,用户需要签署NDA(保密协议)才能获取。安装完成后,用户可以先关闭SDK的窗口,因为后续可以通过help菜单随时调用。此外,文档...
内容概要:本文详细介绍了基于MATLAB GUI界面和卷积神经网络(CNN)的模糊车牌识别系统。该系统旨在解决现实中车牌因模糊不清导致识别困难的问题。文中阐述了整个流程的关键步骤,包括图像的模糊还原、灰度化、阈值化、边缘检测、孔洞填充、形态学操作、滤波操作、车牌定位、字符分割以及最终的字符识别。通过使用维纳滤波或最小二乘法约束滤波进行模糊还原,再利用CNN的强大特征提取能力完成字符分类。此外,还特别强调了MATLAB GUI界面的设计,使得用户能直观便捷地操作整个系统。 适合人群:对图像处理和深度学习感兴趣的科研人员、高校学生及从事相关领域的工程师。 使用场景及目标:适用于交通管理、智能停车场等领域,用于提升车牌识别的准确性和效率,特别是在面对模糊车牌时的表现。 其他说明:文中提供了部分关键代码片段作为参考,并对实验结果进行了详细的分析,展示了系统在不同环境下的表现情况及其潜在的应用前景。
嵌入式八股文面试题库资料知识宝典-计算机专业试题.zip
嵌入式八股文面试题库资料知识宝典-C and C++ normal interview_3.zip
内容概要:本文深入探讨了一款额定功率为4kW的开关磁阻电机,详细介绍了其性能参数如额定功率、转速、效率、输出转矩和脉动率等。同时,文章还展示了利用RMxprt、Maxwell 2D和3D模型对该电机进行仿真的方法和技术,通过外电路分析进一步研究其电气性能和动态响应特性。最后,文章提供了基于RMxprt模型的MATLAB仿真代码示例,帮助读者理解电机的工作原理及其性能特点。 适合人群:从事电机设计、工业自动化领域的工程师和技术人员,尤其是对开关磁阻电机感兴趣的科研工作者。 使用场景及目标:适用于希望深入了解开关磁阻电机特性和建模技术的研究人员,在新产品开发或现有产品改进时作为参考资料。 其他说明:文中提供的代码示例仅用于演示目的,实际操作时需根据所用软件的具体情况进行适当修改。
少儿编程scratch项目源代码文件案例素材-剑客冲刺.zip
少儿编程scratch项目源代码文件案例素材-几何冲刺 转瞬即逝.zip
内容概要:本文详细介绍了基于PID控制器的四象限直流电机速度驱动控制系统仿真模型及其永磁直流电机(PMDC)转速控制模型。首先阐述了PID控制器的工作原理,即通过对系统误差的比例、积分和微分运算来调整电机的驱动信号,从而实现转速的精确控制。接着讨论了如何利用PID控制器使有刷PMDC电机在四个象限中精确跟踪参考速度,并展示了仿真模型在应对快速负载扰动时的有效性和稳定性。最后,提供了Simulink仿真模型和详细的Word模型说明文档,帮助读者理解和调整PID控制器参数,以达到最佳控制效果。 适合人群:从事电力电子与电机控制领域的研究人员和技术人员,尤其是对四象限直流电机速度驱动控制系统感兴趣的读者。 使用场景及目标:适用于需要深入了解和掌握四象限直流电机速度驱动控制系统设计与实现的研究人员和技术人员。目标是在实际项目中能够运用PID控制器实现电机转速的精确控制,并提高系统的稳定性和抗干扰能力。 其他说明:文中引用了多篇相关领域的权威文献,确保了理论依据的可靠性和实用性。此外,提供的Simulink模型和Word文档有助于读者更好地理解和实践所介绍的内容。
嵌入式八股文面试题库资料知识宝典-2013年海康威视校园招聘嵌入式开发笔试题.zip
少儿编程scratch项目源代码文件案例素材-驾驶通关.zip
小区开放对周边道路通行能力影响的研究.pdf
内容概要:本文探讨了冷链物流车辆路径优化问题,特别是如何通过NSGA-2遗传算法和软硬时间窗策略来实现高效、环保和高客户满意度的路径规划。文中介绍了冷链物流的特点及其重要性,提出了软时间窗概念,允许一定的配送时间弹性,同时考虑碳排放成本,以达到绿色物流的目的。此外,还讨论了如何将客户满意度作为路径优化的重要评价标准之一。最后,通过一段简化的Python代码展示了遗传算法的应用。 适合人群:从事物流管理、冷链物流运营的专业人士,以及对遗传算法和路径优化感兴趣的科研人员和技术开发者。 使用场景及目标:适用于冷链物流企业,旨在优化配送路线,降低运营成本,减少碳排放,提升客户满意度。目标是帮助企业实现绿色、高效的物流配送系统。 其他说明:文中提供的代码仅为示意,实际应用需根据具体情况调整参数设置和模型构建。
少儿编程scratch项目源代码文件案例素材-恐怖矿井.zip
内容概要:本文详细介绍了基于STM32F030的无刷电机控制方案,重点在于高压FOC(磁场定向控制)技术和滑膜无感FOC的应用。该方案实现了过载、过欠压、堵转等多种保护机制,并提供了完整的源码、原理图和PCB设计。文中展示了关键代码片段,如滑膜观测器和电流环处理,以及保护机制的具体实现方法。此外,还提到了方案的移植要点和实际测试效果,确保系统的稳定性和高效性。 适合人群:嵌入式系统开发者、电机控制系统工程师、硬件工程师。 使用场景及目标:适用于需要高性能无刷电机控制的应用场景,如工业自动化设备、无人机、电动工具等。目标是提供一种成熟的、经过验证的无刷电机控制方案,帮助开发者快速实现并优化电机控制性能。 其他说明:提供的资料包括详细的原理图、PCB设计文件、源码及测试视频,方便开发者进行学习和应用。
基于有限体积法Godunov格式的管道泄漏检测模型研究.pdf
嵌入式八股文面试题库资料知识宝典-CC++笔试题-深圳有为(2019.2.28)1.zip
少儿编程scratch项目源代码文件案例素材-几何冲刺 V1.5.zip