郁闷,蛋疼的S3C2416 ,哥狠狠的被2416 手册 暗算了一把
2011-08-31 11:28
309 查看
作者:gooogleman 日期 2011.08.31
昨天想给2416 内存降频,开始一直以2440 的思维去看,2440 的HCLK 就是 内存的频率,所以2416 也应该是是这个吧。可是TMD 2416 居然在框架图以及手册不断的强调DDRCLK 并且煞有其事的拿DDRCLK说事,并且DDRCLK一直都是所谓的266M......并且图示里面DDRCLK和HCLK是并行的,HCLK无法干预DDRCLK,但是DDRCLK 又找不到设置的地方,真是神奇了。
真是服了三星了,手册把DDRCLK 里面一个图示里面HCLK*2的字眼弄得很小,是图片来的,无法查看,刚才放大图片才看见,郁闷。也就是说DDRCLK 是等于HCLK*2 的了?!---------------------三星你这个鸟蛋!
没想到都是忽悠的,2416 的内存频率依然是来自HCLK 设置即可。手册page 672 如下:
The AHB and APB clocks are en/disabled by HCLKCON register. All reserved bits have 1 value at initial state.
HCLKCON Bit Description Initial Value
RESERVED [31:21] - 0x7FF
2D [20] Enable HCLK into 2D 1
DRAMC [19] Enable HCLK into DRAM controller 1
SSMC [18] Enable HCLK into the SSMC block 1
RESERVED [17] - 1
HSMMC1 [16] Enable HCLK into the HSMMC1 1
HSMMC0 [15] Enable HCLK into the HSMMC0 1
RESERVED [14] - 1
IROM [13] Enable HCLK into the IROM 1
USBDEV [12] Enable HCLK into the USB device 1
USBHOST [11] Enable HCLK into the USB HOST 1
RESERVED [10] - 1
DISPCON [9] Enable HCLK into the display controller 1
RESERVED [8:6] - 0x3
DMA0~5 [7:0] Enable HCLK into DMA channel 0~5 0x3F
-------------------------------------------------------------又发现一个有错误的地方!
在2416 的SD irom启动的代码里面有
DVSON SETA 0
HCLKVAL SETA 133
Startup_MPLL EQU 800000000
Startup_Mdiv EQU 240
Startup_Pdiv EQU 3
Startup_Sdiv EQU 2
Startup_ARMCLKdiv EQU 0 ; 0 : ARMCLK = MPLL/1
——看如下MPLL计算公式
The output frequencies of MPLL can be calculated using the following equations:
FOUT = (m x FIN) / (p x 2S
) (should be 40~1600MHz)
Fvco = (m x FIN) / p (should be 800~1600MHz)
where, m = MDIV, p = PDIV, s = SDIV, Fin = 10~30Mhz
这个Startup_MPLL=FOUT = (m x FIN) / (p x 2S)=240*12 /(3*2*2)=240M 不可能是 Startup_MPLL EQU 800000000 !!!
好蛋疼。难怪有Startup_ARMCLKdiv EQU 0 ; 0 : ARMCLK = MPLL/1 了,开始我还真以为 2416 ARMCLK 跑了 800M呢。嘿嘿。
现在回来再检查一下HCLK 的问题。希望可以找到一些问题,把一些硬件无法启动以及无法下载NK.bin 的问题解决掉。
汗,手册说了UART 的时钟是来自EPLL 和MPLL无关,但是好扯淡啊,后面PCLKCON 里面居然又有这个说法。
PCLKCON Bit Description Initial Value
RESERVED [31:20] - 0xFFF
PCM [19] Enable PCLK into the PCM 1
RESERVED [18:14] - 0x1F
GPIO [13] Enable PCLK into the GPIO 1
RTC [12] Enable PCLK into the RTC 1
WDT [11] Enable PCLK into the watch dog timer 1
PWM [10] Enable PCLK into the PWM 1
I2S_0 [9] Enable PCLK into the I2S_0 (I2S Æ I2S0) 1
AC97 [8] Enable PCLK into the AC97 1
TSADC [7] Enable PCLK into the TSADC 1
SPI_HS_0 [6] Enable PCLK into the SPI_HS0 (HS Æ HS0) 1
RESERVED [5] - 1
I2C_0 [4] Enable PCLK into the I2C_0 (I2C Æ I2C0) 1
UART0~3 [3:0] Enable PCLK into the UART0~3 0xF
好扯淡,难怪我改了MPLL会导致串口乱码,看来这2416 还是和 2440 一个样的,只是在那里搞得很装。
Each UART contains a baud-rate generator, transmitter, receiver and a control unit, as shown in Figure 14-1. The
baud-rate generator can be clocked by PCLK, EXTUARTCLK or divided EPLL clock.
——原来是可以选择的,这里选择来自PCLK,汗颜。汗死我了,不过手册开始就误导我了。
昨天想给2416 内存降频,开始一直以2440 的思维去看,2440 的HCLK 就是 内存的频率,所以2416 也应该是是这个吧。可是TMD 2416 居然在框架图以及手册不断的强调DDRCLK 并且煞有其事的拿DDRCLK说事,并且DDRCLK一直都是所谓的266M......并且图示里面DDRCLK和HCLK是并行的,HCLK无法干预DDRCLK,但是DDRCLK 又找不到设置的地方,真是神奇了。
真是服了三星了,手册把DDRCLK 里面一个图示里面HCLK*2的字眼弄得很小,是图片来的,无法查看,刚才放大图片才看见,郁闷。也就是说DDRCLK 是等于HCLK*2 的了?!---------------------三星你这个鸟蛋!
没想到都是忽悠的,2416 的内存频率依然是来自HCLK 设置即可。手册page 672 如下:
The AHB and APB clocks are en/disabled by HCLKCON register. All reserved bits have 1 value at initial state.
HCLKCON Bit Description Initial Value
RESERVED [31:21] - 0x7FF
2D [20] Enable HCLK into 2D 1
DRAMC [19] Enable HCLK into DRAM controller 1
SSMC [18] Enable HCLK into the SSMC block 1
RESERVED [17] - 1
HSMMC1 [16] Enable HCLK into the HSMMC1 1
HSMMC0 [15] Enable HCLK into the HSMMC0 1
RESERVED [14] - 1
IROM [13] Enable HCLK into the IROM 1
USBDEV [12] Enable HCLK into the USB device 1
USBHOST [11] Enable HCLK into the USB HOST 1
RESERVED [10] - 1
DISPCON [9] Enable HCLK into the display controller 1
RESERVED [8:6] - 0x3
DMA0~5 [7:0] Enable HCLK into DMA channel 0~5 0x3F
-------------------------------------------------------------又发现一个有错误的地方!
在2416 的SD irom启动的代码里面有
DVSON SETA 0
HCLKVAL SETA 133
Startup_MPLL EQU 800000000
Startup_Mdiv EQU 240
Startup_Pdiv EQU 3
Startup_Sdiv EQU 2
Startup_ARMCLKdiv EQU 0 ; 0 : ARMCLK = MPLL/1
——看如下MPLL计算公式
The output frequencies of MPLL can be calculated using the following equations:
FOUT = (m x FIN) / (p x 2S
) (should be 40~1600MHz)
Fvco = (m x FIN) / p (should be 800~1600MHz)
where, m = MDIV, p = PDIV, s = SDIV, Fin = 10~30Mhz
这个Startup_MPLL=FOUT = (m x FIN) / (p x 2S)=240*12 /(3*2*2)=240M 不可能是 Startup_MPLL EQU 800000000 !!!
好蛋疼。难怪有Startup_ARMCLKdiv EQU 0 ; 0 : ARMCLK = MPLL/1 了,开始我还真以为 2416 ARMCLK 跑了 800M呢。嘿嘿。
现在回来再检查一下HCLK 的问题。希望可以找到一些问题,把一些硬件无法启动以及无法下载NK.bin 的问题解决掉。
汗,手册说了UART 的时钟是来自EPLL 和MPLL无关,但是好扯淡啊,后面PCLKCON 里面居然又有这个说法。
PCLKCON Bit Description Initial Value
RESERVED [31:20] - 0xFFF
PCM [19] Enable PCLK into the PCM 1
RESERVED [18:14] - 0x1F
GPIO [13] Enable PCLK into the GPIO 1
RTC [12] Enable PCLK into the RTC 1
WDT [11] Enable PCLK into the watch dog timer 1
PWM [10] Enable PCLK into the PWM 1
I2S_0 [9] Enable PCLK into the I2S_0 (I2S Æ I2S0) 1
AC97 [8] Enable PCLK into the AC97 1
TSADC [7] Enable PCLK into the TSADC 1
SPI_HS_0 [6] Enable PCLK into the SPI_HS0 (HS Æ HS0) 1
RESERVED [5] - 1
I2C_0 [4] Enable PCLK into the I2C_0 (I2C Æ I2C0) 1
UART0~3 [3:0] Enable PCLK into the UART0~3 0xF
好扯淡,难怪我改了MPLL会导致串口乱码,看来这2416 还是和 2440 一个样的,只是在那里搞得很装。
Each UART contains a baud-rate generator, transmitter, receiver and a control unit, as shown in Figure 14-1. The
baud-rate generator can be clocked by PCLK, EXTUARTCLK or divided EPLL clock.
——原来是可以选择的,这里选择来自PCLK,汗颜。汗死我了,不过手册开始就误导我了。
相关文章推荐
- 郁闷,俺被S3C2416 狠狠的暗算了一把。
- 郁闷,俺被S3C2416 狠狠的暗算了一把
- 无聊到蛋疼 查一下28335手册中的英文单词吧
- 春节红包,央视被微信用互联网思维狠狠“玩”了一把?
- 被闺蜜和男友背叛以后,我狠狠报复了他们一把
- 被boost的date_time库郁闷了一把
- 终于被 volatile “暗算”了一把
- 被Play framework狠狠的play了一把
- arm9/arm9核心板/2416核心板/s3c2416核心板 友坚UT-2416CV02官网资料
- 三星S3C2416完美替代s3c2440的优势,做低成本产品如行业PDA首选2416
- 被TRACE小郁闷一把
- 真郁闷!今天我在公车上被一女人非礼了一把
- 被MemoryStream狠狠地坑了一把
- 蛋疼的郁闷——聚集索引扫描、非聚集索引扫描、表扫描区别
- 记录一把蛋疼的cocostudio的导入使用
- 好扯淡的2416 处理器,手册写得好猥琐啊.
- 好扯淡的2416 处理器,手册写得好猥琐啊。
- 郁闷...
- JavaScript精品源码 ( DHTML手册 JScript手册 )
- 蛋疼--吐槽一下 从魅族、小米和山寨说开去