ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:1.43MB ,
资源ID:4018727      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4018727.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(RealTekFlash架构及使用Flash取代Eeprom方法Part1.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

RealTekFlash架构及使用Flash取代Eeprom方法Part1.docx

1、RealTekFlash架构及使用Flash取代Eeprom方法Part1RealTek-Flash架构及使用Flash取代Eeprom方法-Part-1*学习内容:1:RealTek的Flash架构。2:RealTek的Flash Page 分析。3:RealTek的Flash Page存储方式举例。 20111009*1:RealTek的Flash架构 以LENOVO_LI2361D的CODE为例,此机种使用一颗2M bit的MX25L2026 FLASH 回顾20111008-MCU寻址方式及Bank概念学习.docx那份文件中看到的生成的bin文件,LENOVO_LI2361D_RTD

2、2743PD_LG_LM230WF8.bin,Common Bank及各Bank X的大小如下所示:Common Bank最大范围为0x2BC4+8=0x2BCC,(Common Bank设定范围为0x00000x2FFF)Bank0的最大范围为0xE0ED+1=0xE0EE。 (BanK X设定范围为0x30000xFFFF)Bank1的最大范围为0xBBF5+0x0133=0xBD28。Bank2的最大范围为0xF946+1=0xF947。Bank3的最大范围为0xAEDE+1=0xAEDF。料。如下所示(Page12Page14任意一个):二:Page15解析:前面已经有说过,在Real

3、tek的Code中,Page15是一个比较特殊的Page,它在软体中的功能是唯一的:只用来存放 HDCP-KEY。Page15的MCU寻址地址为:0xF0000xFFFF,可是,Realtek的HDCP-KEY的总长度只有325个byte(包含了前5个byte-包含20个0和20个1的控制key和后320个byte-20组,每组16byte的key)。325个byte却占用了4K byte的空间是不是太浪费了?1:大部分的FLASH的擦除,只能是以4K为单位来擦除,如果放HDCP-KEY的4K有存放其它需要经常更新的数据,会把HDCP-KEY擦除而不可恢复。2: Page15的除了HDCP-K

4、EY占用的之外的那些BYTE,也无法去存放数据,因为MCU软体中已经有占用了一部分的寻址空间,用来作为特殊功能寄存器(XFR)及DDC RAM的寻址使用,即使你往Page15的另外的那些地址存资料,MCU也无法认到(因为用来寻址的地址总线被占用)。如下所示:以LENOVO_LI2361D的CODE为例。在LENOVO_LI2361D的Keil C 中,以下步骤打开对话框:从上可以看到, Off-chip Xdata memory 占用的寻址地址为以0xFB00为起始的地址,长度为0x0300的空间,即:0xFB000xFE00,因为我们的Bank0Bank3使用的都是Xdata的寻址方式,而B

5、ank0Bank2的寻址地址被用来寻找存放CODE二进制代码,所以,此处占用的Xdata是占用了Bank3的寻址地址,即它占用的是Bank3的Page15的部份地址。3:在显示器的规范中,有PC99的要求,即:当显示器在DC OFF的时候,接上显卡,显卡要有读取显示器的EDID的能力。 在早期的Realte IC ,如RTD2122/RTD2120系列,它的主板上没有独立的24C02,不过它在IC内部有独立一块空间,用来与PC进行DDC的数据交换,称之为DDC RAM。 现在的Realtek IC的主板上,都是独立的24C02,在显卡的微弱电力下,可以直接与PC进行DDC数据的传送,所以,已经

6、取消了IC内部DDC RAM功能。 虽然目前的IC已经Disable了DDC RAM功能,可是软体上还是有预留出DDC RAM的寻址地址,如下图所示:注:以下这个图片是以RTD2476D的IC SPEC为BASE得到的,不同IC,它的地址不一定相同。由以上图片可知, 它同样占用了Bank3的Page15的部份寻址地址,而且,与特殊功能寄存器的地址0xFB000xFE00会有部分的地址重合,这没有关系,因为目前的Realtek IC的软体,已经不需要用DDC RAM功能,DDC RAM的地址实际已经没有什么意义。由以上几点,可得,Page15的解析图如下:具体设定可以查看:3:RealTek的F

7、lash Page存储方式举例 Realtek的软体中,把Bank3的Page12Page14这三个page,分别用来存放Mode参数,Global参数,另外一个Free page,用来做data的搬运使用。具体哪个page用来存放哪种参数,是不定的,在flash的初始化的时候,page12用来存放MODE参数,page13用来存放global参数,page14用作free page。 可是,当有一个page的data存满的时候,进行data的搬运后,三个page的角色又会相应变化。在flash.h文件中,有如下定义:每个page的最后一个byte存储的就是这组值中的一个,当存的是MODE D

8、ATA时,page的最后一个byte值为 0x00;当存储的是global data时,page的最后一个byte值为0x01。当某个page被用来存放mode data时,此page中的每一笔资料的16个byte又被用作如下定义,且此page的最后一个byte,存放的值为0x00,表示是mode page:第一个byte用来指示目前存储的是MODE TABLE中的哪一个mode第二/三个byte用来指示画面的H POSITION第四/五个byte用来指示画面的V POSITION第六/七个byte用来指示画面的CLOCK是多少第八个byte用来指示画面的PHASE是多少第九十五个byte用来

9、指示画面的中心点的 H/V POSITION , CLOCK , PHASE第十六个byte用来指示这笔资料的checksum是多少举例:把Lenovo Li2361的机台,执行一次erase动作,再重新烧CODE,在flash初始化时,page12第一次充当存放mode data的角色。当PC输入的MODE设定在800x600 60HZ时,在画面auto结束后,读Flash page12的资料,可以看到,page12的起始位置0xC000,存放了一组data。这笔资料的第一个byte是0x0E = 14,表示当前存储的mode是mode table中的第14组mode,如下图所示,mode

10、table第14组mode为 _MODE_800x600_60HZ,与目前PC输入的mode完全相同。第2/3个byte用来指示此MODE的H POSITION,第2/3个byte为0x10DB,其中,第2个byte中的第一个bit用来指示此MODE是否已经有AUTO 过。为1表示已经有AUTO 过;为0表示此mode未做过auto。除去第一个bit外,byte2/3的值为:0x00DB=219,为此mode的HstartPostion.第4/5个byte用来指示此MODE的V POSTION,第4/5个byte值为0x001A=26,为此mode的VstartPostion.第6/7个byt

11、e用来指示此MODE的CLOCK,第6/7个byte值为0x0420=1056,表示的是input HTotal值,有些CODE表示的是OSD看到的CLOCK值。第8个byte用来指示phase是多少,从读出来的资料可以看到,目前的phase为0x3F=63,与OSD里的资料相同,如下图:Page12的最后一笔资料,用来存储page12的一些参数信息:当某个page被用来存放global data时,此page中的每笔资料16个byte ,第一个byte一定是index ,用来指示这笔资料存放的是什么资料,最后一个byte一定是这组资料的checksum。因为global data参数多种多样

12、,中间的那些byte没有统一的规则。在软体中, global data的index有如下的定义:由上可知,global data数据多种多样,以最简单的6500K / 5800K / 9300K的色温值来举例,在上面的定义中,这三个色温值的index分别为 10/11/12. 在flash的第一次初始化时,page13被分配用来存储global data,读 page13的值,找到第一个byte为0x0a , 0x0b, 0x0c的资料,如下图所示:与工厂菜单下的OSD看到的值完全一样,如下图所示:Page13的最后一个byte为0x01,表示此page目前存储的data为global data。Mode Data 与 Global Data数据量比较大,只能举例分析,基本的存储规则与上述相同,有时间有兴趣可以一个一个去分析。 此文件为Realtek提供flash replace eeprom PPT文档,供参考。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1