我想從DTS文件中瞭解以下內容。 OS/Kernel很新。什麼是緩存大小和緩存行大小?
cpus {
#address-cells = <1>;
#size-cells = <0>;
PowerPC,[email protected] {
device_type = "cpu";
reg = <0x0>;
d-cache-line-size = <32>;
i-cache-line-size = <32>;
d-cache-size = <16384>;
i-cache-size = <16384>;
timebase-frequency = <0>;
bus-frequency = <0>;
clock-frequency = <0>;
};
};
任何人都可以提供上面的簡要說明嗎?
我瞭解以下。 緩存塊大小或緩存行大小:在緩存未命中時傳輸的數據量。指令緩存(I-cache):只能保存指令的緩存。數據緩存(D-cache):只能保存數據的緩存。
而且什麼我緩存行大小是什麼意思?
d-cache-line-size = <32>;
i-cache-line-size = <32>;
d-cache-size = <16384>;
i-cache-size = <16384>;
在某些dts文件中有如下引導加載程序的註釋,如下所示。
cpus {
#address-cells = <1>;
#size-cells = <0>;
PowerPC,[email protected] {
device_type = "cpu";
reg = <0x0>;
d-cache-line-size = <32>;
i-cache-line-size = <32>;
d-cache-size = <16384>;
i-cache-size = <16384>;
timebase-frequency = <0>; // from bootloader
bus-frequency = <0>; // from bootloader
clock-frequency = <0>; // from bootloader
};
};
如何從bootloader的哪個文件中找出? 使用的引導程序是U-boot。
謝謝。
謝謝你這麼多TheCodeArtist。現在我明白他們在哪裏填充。非常感謝。但是,這些行話是非常新的。我是嵌入式系統的新手。我的職責是啓動,操作系統,驅動程序。很明顯,需要了解上述內容的知識庫。你可以推薦一些書籍來開始嵌入式(硬件,操作系統(內核),啓動,驅動程序)? –
非常感謝TheCodeArtist。我剛剛瞭解了以下內容 「爲了充分利用板載高速緩存和行大小(至32字節)」,「有效使用BIU以實現CPU與片上高速緩存之間最快的可能傳輸。」 精美的解釋。你是我的上師。起初,我只是認爲這些數字取自參考手冊。現在我明白爲什麼這些價值。 –
很高興得到了幫助。 :-) – TheCodeArtist