注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)操作系統(tǒng)LinuxCPU源代碼分析與芯片設(shè)計(jì)及Linux移植

CPU源代碼分析與芯片設(shè)計(jì)及Linux移植

CPU源代碼分析與芯片設(shè)計(jì)及Linux移植

定 價(jià):¥89.80

作 者: 倪斷利,陳曦,李揮 著
出版社: 電子工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: Linux

購(gòu)買(mǎi)這本書(shū)可以去


ISBN: 9787121039843 出版時(shí)間: 2007-04-01 包裝: 膠版紙
開(kāi)本: 850*1168 頁(yè)數(shù): 596 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書(shū)全面系統(tǒng)地講解了CPU的芯片設(shè)計(jì)技術(shù)。書(shū)中詳細(xì)分析了開(kāi)放源代碼32位RISC CPU(or1200)的源代碼、編譯器的移植、Linux操作系統(tǒng)的移植,介紹了CPU源代碼在FPGA上的實(shí)現(xiàn)方法,說(shuō)明了CPU芯片的全定制設(shè)計(jì)方法。作者不僅分析了源代碼,而且進(jìn)行了芯片設(shè)計(jì)實(shí)現(xiàn),并詳細(xì)講述了設(shè)計(jì)方法。本書(shū)的內(nèi)容全面、深入、系統(tǒng),融入了作者長(zhǎng)期的芯片設(shè)計(jì)經(jīng)驗(yàn),這使本書(shū)對(duì)開(kāi)發(fā)人員更有實(shí)際的指導(dǎo)意義。本書(shū)主要針對(duì)從事芯片設(shè)計(jì)的中高級(jí)讀者及芯片設(shè)計(jì)工程師,也適合作為大學(xué)教材和參考書(shū)。

作者簡(jiǎn)介

  倪繼利,畢業(yè)于清華大學(xué)電子工程系,獲通信與電子系統(tǒng)專業(yè)碩士學(xué)位,在國(guó)際知名大公司多年從事Linux開(kāi)發(fā)工作,已出版與Linux相關(guān)專著有《Linux內(nèi)核分析及編程》和《Qt及Linux操作系統(tǒng)窗口設(shè)計(jì)》。

圖書(shū)目錄

第1章  CPU構(gòu)架概述    1
1.1  計(jì)算機(jī)體系結(jié)構(gòu)概述    1
1.1.1  計(jì)算機(jī)系統(tǒng)分類    2
1.1.2  微處理器概述    4
1.1.3  處理器的性能度量    5
1.1.4  RISC CPU的結(jié)構(gòu)    5
1.2  標(biāo)量流水線技術(shù)    6
1.2.1  流水線分類    7
1.2.2  線性流水線的性能分析    8
1.2.3  流水線相關(guān)    11
1.2.4  OR1200 CPU流水線    13
1.3  超標(biāo)量構(gòu)架    14
1.3.1  超標(biāo)量流水線    15
1.3.2  分支預(yù)測(cè)技術(shù)    16
1.3.3  指令的動(dòng)態(tài)調(diào)度    22
1.3.4  存儲(chǔ)器數(shù)據(jù)流技術(shù)    28
1.4  超長(zhǎng)指令構(gòu)架    31
1.4.1  概述    32
1.4.2  RISC,CISC與VLIW構(gòu)架的區(qū)別    32
1.4.3  VLIW構(gòu)架的編譯器優(yōu)化    34
1.5  處理器介紹    36
1.5.1  超標(biāo)量處理器——Core微構(gòu)架    36
1.5.2  標(biāo)量處理器實(shí)例    38
第2章  OR1200構(gòu)架    42
2.1  OpenRISC概述    42
2.1.1  尋址模式    43
2.1.2  位和字節(jié)次序    43
2.1.3  寄存器集    44
2.1.4  指令集及指令格式    47
2.1.5  例外模型    55
2.1.6  內(nèi)存管理    58
2.1.7  高速緩存模型和高速緩存一致性    60
2.1.8  調(diào)試單元(可選)    62
2.1.9  執(zhí)行計(jì)數(shù)單元(可選)    63
2.1.10  電源管理(可選)    63
2.1.11  可編程中斷控制器(可選)    63
2.1.12  Tick定時(shí)器(可選)    64
2.2  OR1200構(gòu)架    64
2.2.1  CPU/DSP核心    65
2.2.2  數(shù)據(jù)和指令高速緩存    67
2.2.3  數(shù)據(jù)與指令MMU    68
2.2.4  可編程的中斷控制器    70
2.2.5  Tick定時(shí)器    71
2.2.6  電源管理支持    71
2.2.7  調(diào)試單元    71
2.2.8  時(shí)鐘與復(fù)位    72
2.2.9  Wishbone接口    72
2.3  OR1200核心寄存器    72
2.4  OR1200的IO接口說(shuō)明    73
2.5  OR1200核心硬件配置    76
第3章  Wishbone片上總線    77
3.1  概述    77
3.2  基本特點(diǎn)    78
3.3  接口信號(hào)定義    79
3.4  Wishbone支持的互聯(lián)類型    81
3.5  Wishbone總線周期    82
3.5.1  一般操作    82
3.5.2  單次讀/寫(xiě)周期    83
3.5.3  塊讀周期    85
3.5.4  塊寫(xiě)周期    86
3.5.5  RMW操作    87
3.5.6  數(shù)據(jù)組織    88
3.6  Wishbone寄存反饋總線周期    89
3.6.1  周期的同步與異步結(jié)束方式之對(duì)比    89
3.6.2  Wishbone寄存反饋周期結(jié)束方式    90
3.6.3  突發(fā)結(jié)束    91
3.6.4  地址不變突發(fā)    92
3.6.5  地址增加突發(fā)    93
3.7  Wishbone規(guī)范對(duì)IP文檔的要求    94
3.8  Wishbone從設(shè)備接口示例    94
3.8.1  一臺(tái)8位從設(shè)備    94
3.8.2  一臺(tái)32位RTL級(jí)隨機(jī)
3.8.2  數(shù)生成器從設(shè)備    95
3.9  Wishbone對(duì)RAM/ROM的支持    97
3.9.1  Wishbone與RAM和ROM的互聯(lián)    97
3.9.2  Wishbone兼容的RAM和
3.9.2  Flash仿真模型    97
3.10  Wishbone點(diǎn)到點(diǎn)連接示例    99
3.11  Wishbone共享總線連接示例    99
3.12  地址譯碼    101
3.13  仲裁器的設(shè)計(jì)    102
3.14  小結(jié)    103
第4章  CPU/DSP核心    104
4.1  CPU/DSP核心    104
4.1.1  CPU/DSP核心模塊的接口    104
4.1.2  CPU/DSP源代碼模塊功能說(shuō)明    106
4.1.3  CPU/DSP核心模塊流水線    107
4.1.4  CPU/DSP核心寄存器說(shuō)明    107
4.1.5  OR1200的數(shù)據(jù)流程    108
4.2  IF級(jí)    109
4.2.1  genpc源代碼模塊    109
4.2.2  if模塊    112
4.3  ID級(jí)    115
4.3.1  ctrl模塊接口說(shuō)明    115
4.3.2  ctrl模塊源代碼分析    117
4.4  EX級(jí)    126
4.4.1  operandmuxes模塊    126
4.4.2  alu模塊    129
4.4.3  (乘法器)mult_mac模塊    134
4.5  系統(tǒng)控制模塊    138
4.5.1  sprs模塊    139
4.5.2  cfgr模塊    147
4.5.3  except模塊    150
4.5.4  freeze模塊    158
4.6  MA級(jí)(lsu模塊)    161
4.7  WB級(jí)    167
4.7.1  wbmux源代碼模塊    167
4.7.2  rf模塊    169
第5章  OpenRISC存儲(chǔ)系統(tǒng)    175
5.1  概述    175
5.1.1  現(xiàn)代計(jì)算機(jī)存儲(chǔ)系統(tǒng)原理    175
5.1.2  OpenRISC存儲(chǔ)系統(tǒng)構(gòu)成    177
5.1.3  虛擬存儲(chǔ)系統(tǒng)的工作原理    177
5.1.4  MMU寄存器說(shuō)明    182
5.2  OpenRISC的高速緩存    185
5.2.1  一般高速緩存的工作原理    185
5.2.2  OpenRISC高速緩存的工作原理    187
5.2.3  Cache讀寫(xiě)操作的總線周期    188
5.2.4  dcache寄存器    190
5.3  OpenRISC的虛擬存儲(chǔ)系統(tǒng)源碼分析    191
5.3.1  OR1200_dmmu_top模塊源碼分析    191
5.3.2  OR1200_dmmu_tlb模塊源碼分析    193
5.4  OpenRISC高速緩存的源碼分析    196
5.4.1  OR1200_dc_top模塊    196
5.4.2  OR1200數(shù)據(jù)緩沖存儲(chǔ)器    199
5.4.3  OR1200_dc_fsm模塊    200
5.5  片上存儲(chǔ)器QMEM    205
第6章  OpenRISC的主要外設(shè)    212
6.1  概述    212
6.2  寫(xiě)緩沖模塊OR1200_sb    212
6.3  總線接口單元模塊OR1200_wb_biu    215
6.4  計(jì)時(shí)器模塊OR1200_tt    220
6.5  可編程中斷控制器模塊OR1200_pic    223
6.6  電源管理模塊OR1200_pm    225
第7章  OpenRISC調(diào)試接口    230
7.1  OR1200的調(diào)試功能概述    230
7.2  調(diào)試單元OR1200_du模塊    231
7.2.1  調(diào)試單元的寄存器定義    231
7.2.2  調(diào)試單元的源碼分析    237
7.3  JTAG開(kāi)發(fā)接口模塊    245
7.3.1  JTAG開(kāi)發(fā)接口模塊的工作原理    245
7.3.2  OR1200與JTAG開(kāi)發(fā)接口的連接    246
7.3.3  JTAG調(diào)試接口的頂層模塊dbg_top    246
7.3.4  Dbg_registers和Dbg_trace模塊    261
7.4  小結(jié)    269
第8章  編譯器移植    270
8.1  編譯過(guò)程簡(jiǎn)介    270
8.1.1  編譯流程    270
8.1.2  編譯過(guò)程中的優(yōu)化概述    271
8.1.3  編譯程序組成    275
8.2  GNU開(kāi)發(fā)工具鏈    276
8.2.1  GCC 4.0簡(jiǎn)介    277
8.2.2  binutils工具    280
8.2.3  gdb調(diào)試工具    281
8.3  RTL語(yǔ)言    282
8.3.1  平臺(tái)描述及抽象機(jī)標(biāo)準(zhǔn)指令    283
8.3.2  RTL語(yǔ)法簡(jiǎn)介    285
8.3.3  RTL示例    286
8.3.4  標(biāo)準(zhǔn)指令模式    288
8.4  OR32平臺(tái)GCC編譯器移植    289
8.4.1  標(biāo)準(zhǔn)指令模式的實(shí)現(xiàn)方法    290
8.4.2  or32.md文件    290
8.4.3  define_expand功能擴(kuò)展    293
8.5  OR32平臺(tái)binutils的移植    294
8.5.1  指令編碼接口    295
8.5.2  目標(biāo)文件平臺(tái)相關(guān)信息宏定義    298
8.5.3  opcodes庫(kù)    300
8.6  OR32工具鏈的編譯安裝    303
第9章  Linux平臺(tái)移植    306
9.1  編寫(xiě)OR32復(fù)位例外    306
9.1.1  reset(復(fù)位)例外    307
9.1.2  初始化內(nèi)存管理器(函數(shù)_mc_init)    307
9.1.3  初始化UART(函數(shù)_early_uart_init)    309
9.1.4  CPU啟動(dòng)函數(shù)_start    309
9.1.5  IC和DC的啟動(dòng)    311
9.1.6  用于例外調(diào)試的宏定義    312
9.2  內(nèi)核啟動(dòng)(函數(shù)start_kernel)    315
9.2.1  中斷操作    316
9.2.2  tick定時(shí)器底層接口函數(shù)    320
9.3  內(nèi)核啟動(dòng)時(shí)建立
9.3  平臺(tái)(函數(shù)setup_arch)    321
9.3.1  TLB管理底層接口函數(shù)    322
9.3.2  OR32控制臺(tái)驅(qū)動(dòng)程序    323
9.4  例外處理    324
9.4.1  通用例外入口處理宏    325
9.4.2  出入例外的現(xiàn)場(chǎng)保護(hù)    327
9.4.3  返回處理    328
9.4.4  頁(yè)錯(cuò)誤處理例程    330
9.4.5  外部中斷例外處理    332
9.4.6  DTLB/ITLB失靶例外處理    333
9.4.7  啟動(dòng)的DTLB/ITLB失靶處理    335
9.4.8  系統(tǒng)調(diào)用例外處理    336
9.5  運(yùn)行時(shí)用到的底層接口    337
9.5.1  線程創(chuàng)建及切換    337
9.5.2  硬件配置    339
9.5.3  定義小于1ms的延遲函數(shù)    340
9.5.4  ELF相關(guān)定義    340
9.5.5  用戶與內(nèi)核空間之間的數(shù)據(jù)傳遞    340
9.5.6  系統(tǒng)調(diào)用參數(shù)處理    343
9.5.7  寄存器及棧    344
9.6  Linux移植    345
9.6.1  or1ksim仿真器    345
9.6.2  OpenRISC參考平臺(tái)    348
第10章  OpenRISC參考設(shè)計(jì)
第10章  與FPGA移植    349
10.1  OpenRISC的功能驗(yàn)證    349
10.1.1  處理器設(shè)計(jì)中的功能驗(yàn)證    349
10.1.2  OR1200的基本驗(yàn)證    349
10.1.3  OpenRSIC參考驗(yàn)證
10.1.3  平臺(tái)ORP_SOC    353
10.2  ORP_SOC的FPGA移植    355
10.2.1  FPGA開(kāi)發(fā)流程    355
10.2.2  Altera Cyclone II
10.2.2  FPGA的架構(gòu)與資源    357
10.2.3  ORP_SOC到Altera FPGA的移植    358
10.3  FPGA開(kāi)發(fā)板的設(shè)計(jì)與使用    364
第11章  開(kāi)放源代碼以太網(wǎng)MAC控制器IP    366
11.1  開(kāi)放源代碼以太網(wǎng)媒體
11.1  訪問(wèn)控制器IP    366
11.1.1  以太網(wǎng)媒體訪問(wèn)控制協(xié)議概要    366
11.1.2  ORP_SoC的以太網(wǎng)
11.1.2  MAC控制器IP核的主要特點(diǎn)    368
11.2  以太網(wǎng)MAC控制器IP頂層模塊    368
11.2.1  功能    368
11.2.2  以太網(wǎng)MAC控制器IP
11.2.2  頂層模塊的源碼分析    369
11.3  MII接口模塊    373
11.3.1  MII接口模塊的功能    373
11.3.2  MII接口頂層模塊源代碼分析    375
11.3.3  MII時(shí)鐘生成模塊    379
11.3.4  MII移位輸出模塊    379
11.3.5  MII輸出控制模塊    381
11.4  以太網(wǎng)數(shù)據(jù)發(fā)送模塊    381
11.4.1  以太網(wǎng)MAC數(shù)據(jù)發(fā)送
11.4.1  模塊功能描述    381
11.4.2  以太網(wǎng)MAC數(shù)據(jù)頂層
11.4.2  模塊頂層模塊    382
11.4.3  以太網(wǎng)MAC數(shù)據(jù)發(fā)送
11.4.3  控制狀態(tài)機(jī)模塊    386
11.4.4  以太網(wǎng)MAC數(shù)據(jù)發(fā)送
11.4.4  計(jì)數(shù)器模塊    388
11.4.5  發(fā)送隨機(jī)數(shù)產(chǎn)生模塊    389
11.5  以太網(wǎng)數(shù)據(jù)接收模塊    390
11.5.1  以太網(wǎng)MAC數(shù)據(jù)接收模塊的功能    390
11.5.2  以太網(wǎng)MAC數(shù)據(jù)接收頂層模塊    390
11.5.3  以太網(wǎng)MAC數(shù)據(jù)接收狀態(tài)機(jī)    393
11.5.4  以太網(wǎng)MAC數(shù)據(jù)接收計(jì)數(shù)器模塊    394
11.5.5  以太網(wǎng)MAC數(shù)據(jù)
11.5.5  接收地址校驗(yàn)?zāi)K    396
11.6  以太網(wǎng)MAC控制模塊    397
11.6.1  以太網(wǎng)MAC控制模塊的功能    397
11.6.2  以太網(wǎng)MAC控制模塊的頂層模塊    398
11.6.3  以太網(wǎng)MAC發(fā)送控制模塊    401
11.6.4  以太網(wǎng)MAC接收控制模塊    403
11.7  以太網(wǎng)MAC狀態(tài)模塊    406
11.8  以太網(wǎng)MAC寄存器模塊    408
11.9  以太網(wǎng)MAC Wishbone接口模塊    411
11.9.1  功能描述    411
11.9.2  源代碼分析    413
11.10  小結(jié)    436
第12章  USB設(shè)備功能模塊    437
12.1  USB 2.0包標(biāo)識(shí)符及傳輸控制概述    437
12.2  USB IP核的整體結(jié)構(gòu)    438
12.2.1  USB 2.0 IP核模塊組成說(shuō)明    438
12.2.2  USB數(shù)據(jù)緩沖與傳遞    441
12.2.3  USB功能模塊的源代碼組織    444
12.3  寄存器文件模塊usbf_rf    444
12.3.1  USB寄存器功能說(shuō)明    444
12.3.2  模塊usbf_rf源代碼分析    448
12.3.3  端點(diǎn)寄存器文件    452
12.4  Wishbone接口模塊usbf_wb    457
12.5  內(nèi)存緩沖區(qū)仲裁器
12.5  模塊usbf_mem_arb    459
12.6  協(xié)議層模塊    460
12.6.1  IDMA模塊    461
12.6.2  協(xié)議引擎模塊    468
12.6.3  包裝配模塊    480
12.6.4  包拆卸模塊    484
12.7  UTMI接口模塊    487
12.7.1  UTMI標(biāo)準(zhǔn)說(shuō)明    487
12.7.2  模塊usbf_utmi_if源代碼分析    489
12.7.3  USB連線狀態(tài)及速度協(xié)調(diào)模塊    490
第13章  全定制芯片設(shè)計(jì)方法    502
13.1  集成電路設(shè)計(jì)概述    502
13.1.1  集成電路的設(shè)計(jì)分類    502
13.1.2  FPGA到ASIC設(shè)計(jì)的轉(zhuǎn)換    502
13.2  芯片設(shè)計(jì)流程    503
13.2.1  EDA工具介紹    504
13.2.2  前端設(shè)計(jì)概述    504
13.2.3  后端設(shè)計(jì)概述    505
13.3  DC工具綜合    507
13.3.1  DC工具綜合的基本流程說(shuō)明    508
13.3.2  綜合的基本概念    510
13.3.3  DC的工藝庫(kù)信息說(shuō)明    513
13.3.4  DC的命令說(shuō)明    518
13.3.5  ORP的綜合    522
13.4  PrimeTime靜態(tài)時(shí)序分析    527
13.4.1  靜態(tài)時(shí)序分析概述    527
13.4.2  PrimeTime用戶流程    529
13.5  可測(cè)性設(shè)計(jì)    530
13.5.1  DFT技術(shù)概述    531
13.5.2  DFT Compiler流程    535
13.5.3  ATPG工具TetraMAX    537
13.6  自動(dòng)布局布線    540
13.7  版圖的物理驗(yàn)證    562
13.7.1  DRC流程    562
13.7.2  LVS流程    568
附錄A  循環(huán)冗余校驗(yàn)算法分析與實(shí)現(xiàn)    570
附錄B  基于元胞自動(dòng)機(jī)和線性反饋移
附錄B  位寄存器的硬件隨機(jī)數(shù)生成器    579
附錄C  Verilog RTL設(shè)計(jì)中的常見(jiàn)問(wèn)題    587
參考文獻(xiàn)    595

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)