第1章 嵌入式系统概论 1-1
1-1 嵌入式系统简介 1-2
1-1-1 嵌入式系统的分类 1-2
1-1-2 嵌入式系统的产品特性 1-4
1-1-3 嵌入式系统的产品实例 1-6
1-2 处理器(Processor) 1-11
1-2-1 处理器的种类 1-12
1-2-2 处理器的特性 1-16
1-2-3 处理器的使用时机 1-17
1-2-4 ARM系列处理器 1-19
1-2-5 双核心处理器 1-20
1-2-6 嵌入式作业系统(Embedded OS) 1-22
1-3 嵌入式处理器(Embedded Processor, EP) 1-24
1-3-1 嵌入式处理器的分类与应用 1-24
1-3-2 数位多媒体处理器(Digital multimedia processor) 1-27
1-3-3 应用处理器(Application processor) 1-33
1-3-4 高效能DSP处理器(High performance DSP) 1-36
1-3-5 低耗电DSP处理器(Low power DSP) 1-38
1-3-6 微控制器(Microcontroller) 1-40
第2章 DaVinci平台硬体架构 2-1
2-1 ARM核心简介 2-2
2-1-1 DaVinci平台的基本架构 2-2
2-1-2 ARM核心的功能 2-5
2-1-3 ARM核心的架构 2-7
2-1-4 ARM的协同处理器15(Co-Processor 15) 2-10
2-1-5 ARM核心的记忆体 2-11
2-1-6 ARM核心的时脉(Clock) 2-13
2-1-7 ARM核心的电源管理 2-18
2-1-8 ARM核心的中断控制器(Interrupt controller) 2-24
2-1-9 ARM核心的开机模式 2-27
2-2 DSP核心简介 2-30
2-2-1 C64x+核心(C64x+ core) 2-31
2-2-2 C64x+记忆体控制器(Memory controller) 2-32
2-2-3 C64x+记忆体映射(Memory map) 2-34
2-2-4 C64x+週边控制器 2-35
2-2-5 ARM与DSP核心的整合 2-37
2-3 视讯处理子系统(Video Processing Sub-System, VPSS) 2-38
2-3-1 视讯处理前端(Video Processing Front End, VPFE) 2-39
2-3-2 CCD控制器(CCD Controller, CCDC) 2-45
2-3-3 预视引擎(Preview engine) 2-50
2-3-4 影像尺寸缩放模组(Resizer) 2-59
2-3-5 硬体3A模组(Hardware 3A, H3A) 2-60
2-3-6 视讯处理后端(Video Processing Back End, VPBE) 2-62
2-4 其它週边系统简介(Peripherals) 2-73
2-4-1 记忆体介面 2-73
2-4-2 乙太网路媒体存取控制器(Ethernet MAC) 2-80
2-4-3 USB控制器(Universal Serial Bus, USB) 2-83
2-4-4 其他週边系统 2-86
2-5 DVEVM(DaVinci Video Evaluation Module)发展板 2-96
2-5-1 DVEVM发展板的设定 2-96
2-5-2 DVEVM发展板的週边元件 2-99
2-5-3 DaVinci平台相关资讯 2-103
第3章 DaVinci平台软体架构 3-1
3-1 DaVinci平台软体架构简介 3-1
3-1-1 DaVinci多媒体系统软体架构 3-2
3-1-2 DaVinci软体应用实例 3-3
3-1-3 DaVinci 平台之编解码引擎框架 3-4
3-2 应用程式开发 3-5
3-2-1 Engine API函式 3-5
3-2-2 Engine API使用说明 3-6
3-2-3 VISA API函式 3-8
3-2-4 VISA API使用说明 3-8
3-2-5 应用程式范例 3-15
3-3 编解码引擎框架(Codec Engine Framework) 3-17
3-3-1 远端程序唿叫 (Remote Procedure Call, RPC) 3-17
3-3-2 处理器间通讯(Inter-Processor Communication, IPC) 3-19
3-3-3 编解码引擎工作流程 3-23
第4章 xDAIS/xDM演算法标准 4-1
4-1 xDAIS标准简介 4-1
4-1-1 程式撰写规范 4-2
4-1-2 演算法介面 4-3
4-2 IALG介面 4-5
4-3 IDMA介面 4-20
4-3-1 DMA框架(DMA framework) 4-20
4-3-2 DMA传输设定 4-22
4-3-3 IDMA3介面函式 4-28
4-3-4 DMAN3 函式 4-35
4-3-5 ACPY3函式 4-36
4-3-6 应用程式与演算法程式的互动 4-36
4-4 xDM标准 4-37
第5章 DaVinci平台开发环境 5-1
5-1 嵌入式平台开发环境 5-1
5-2 C64x+ DSP开发环境 5-3
5-3 Linux/ARM开发环境 5-8
5-3-1 Linux开机组态配置 5-9
5-3-2 GNU工具链(GNU toolchain) 5-10
5-3-3 DevRocket开发工具 5-11
5-3-4 终端机模拟器 5-12
5-4 DaVinci平台开发工具套件 5-12
5-5 建构DaVinci平台开发环境 5-13
第6章 DaVinci平台程式开发 6-1
6-1 XDC概述 6-1
6-1-1 RTSC封包 6-1
6-1-2 eXpanDed C(XDC)语言 6-2
6-2 XDC工具组(XDCtools) 6-3
6-2-1 XDC工具组(XDCtools)的成员 6-4
6-2-2 XDC工具组的副档名 6-5
6-3 XDC工具组使用实例 6-7
6-3-1 应用程式开发 6-7
6-3-2 演算法开发 6-12
6-4 DaVinci平台程式开发 6-17
6-4-1 XDC工具环境配置 6-18
6-4-2 DaVinci平台的四个程式开发角色 6-20
6-4-3 演算法开发者(Algorithm creator) 6-21
6-4-4 伺服器整合者(Server integrator) 6-25
6-4-5 引擎整合者(Engine integrator) 6-35
6-4-6 应用程式开发者(Application author) 6-36
第7章 开发环境安装及测试 7-1
7-1 硬体环境的安装与设置 7-1
7-1-1 概述 7-1
7-1-2 硬体环境的安装 7-2
7-1-3 硬体连接说明 7-3
7-1-4 发展板的介面、跳线和开关设置 7-6
7-2 软体环境的安装 7-7
7-2-1 书写惯? 7-8
7-2-2 准备安装 7-9
7-2-3 安装发展板的Linux环境套件 7-9
7-2-4 安装DVEVM软体开发套件 7-10
7-2-5 安装A/V测试档案 7-11
7-2-6 安装DVSDK软体开发套件 7-11
7-2-7 安装实验程式码 7-13
7-2-8 设定程式的编译环境 7-13
7-3 Linux主机的环境设置 7-14
7-3-1 设置串列终端 7-14
7-3-2 设置TFTP伺服器 7-17
7-3-3 设置NFS伺服器 7-19
7-4 编译DVEVM发展板的Linux核心 7-22
7-5 设置DVEVM发展板的启动参数 7-24
7-5-1 U-Boot的环境变数与命令 7-24
7-5-2 设置DVEVM发展板的启动参数 7-25
7-5-3 使用Tera Term软体,设置U-Boot的环境变数与开机 7-28
7-6 编写DaVinci平台上的应用程式 7-29
7-7 开发环境简易安装流程 7-30
7-7-1 开发环境映像档 7-30
7-7-2 简易安装流程 7-31
第8章 XDC工具组的程式开发 8-1
8-1 实验说明 8-1
8-2 XDC指令使用说明 8-2
8-2-1 语法及参数 8-2
8-2-2 XDC命令使用范例 8-4
8-2-3 环境变数 8-5
8-2-4 XDC Shell脚本 8-6
8-3 实验8A:Hello World 8-9
8-4 实验8B:新增install编译规则 8-13
第9章 音讯录放功能实现 9-1
9-1 实验说明 9-1
9-2 OSS(Open Sound System)介绍 9-3
9-2-1 mixer装置(混音器) 9-3
9-2-2 dsp装置 9-4
9-2-3 OSS录音或播放程式的基本架构 9-4
9-3 实验9A:音讯录音功能 9-6
9-4 实验9B:音讯播放功能 9-8
9-5 实验9C:音讯录放功能 9-9
第10章 视讯录放功能实现 10-1
10-1 实验说明 10-1
10-2 V4L2简介 10-3
10-2-1 V4L2支援的ioctl命令与资料结构 10-5
10-2-2 V4L2视讯撷取的基本流程 10-6
10-3 FBdev简介 10-12
10-3-1 FBdev支援的ioctl命令与资料结构 10-13
10-3-2 视讯显示程式的基本流程 10-15
10-4 实验10A:视讯录影功能 10-18
10-5 实验10B:视讯播放功能 10-21
10-6 实验10C:视讯录放功能 10-23
10-7 实验10D:OSD与Attribute视窗的测试 10-28
第11章 编解码器使用实例 11-1
11-1 实验说明 11-1
11-2 实验11A:本地编解码器(Local codec) 11-2
11-3 实验11B:远端编解码器(Remote codec) 11-4
第12章 H.264多媒体录放器实现 12-1
12-1实验说明 12-1
12-2实验12A:安装H.264编解码器封包(Codec package) 12-2
12-3实验12B:建立H.264伺服器封包(Server package) 12-2
12-4实验12C:实作H.264多媒体录制应用 12-4
12-5实验12D:实作H.264多媒体播放应用 12-8
我一直認為,嵌入式系統的開發,除了軟體功力,對硬體的理解同樣至關重要。這本書恰恰滿足了我這方面的需求。它沒有像坊間許多書籍一樣,只著重於軟體API的使用,而是深入探討了DaVinci SOC這個平台底層的硬體架構。書中對於各種處理器核心的特性、記憶體架構、以及各式週邊介面的運作原理,都有詳盡的解說。我特別喜歡書中對於「快取記憶體」(Cache) 的講解,它闡述了快取的優勢與潛在的陷阱,並提供了如何有效利用快取來提升系統效能的策略,這對我以往的開發經驗有很大的啟發。此外,書中對於「中斷處理」的剖析也相當細膩,如何設計高效且可靠的中斷響應機制,以及如何避免競態條件,這些都是確保系統穩定性的關鍵。結合系統的實作演練,讓我能夠將學到的硬體知識,實際應用到程式碼中,這種理論與實踐結合的學習方式,讓我受益匪淺。
评分如果你跟我一樣,過去的開發經驗主要集中在單一處理器架構,並且對於如何有效地利用雙核心的優勢感到困惑,那麼這本書絕對值得你入手。作者在書中,並沒有迴避掉雙核心系統開發中的複雜性,而是非常坦誠地將其攤開在讀者面前。我特別喜歡書中關於「行程間通訊」(IPC) 的詳細講解,從簡單的共享記憶體,到複雜的訊息佇列,書中都提供了具體的程式碼範例和效能比較,這讓我能夠更深入地理解不同IPC機制的適用場景。此外,書中對於「作業系統移植」和「驅動程式開發」的實作演練,也讓我印象深刻。能夠親眼看到一個完整的作業系統如何被移植到DaVinci SOC上,並且學會如何編寫底層的驅動程式,這對於提升我的整體技術能力,有著非常大的幫助。這本書的內容,可以說是我在嵌入式系統開發道路上,一次非常有價值的知識投資。
评分這本書最大的特色,我覺得是它非常貼近實際開發的「痛點」。許多嵌入式書籍,往往會過度強調單一作業系統或單一架構,而這本《雙核心嵌入式系統開發》卻能針對DaVinci SOC這樣複雜的平台,提供一套完整的開發視角。書中對於硬體抽象層(HAL) 的建立,以及如何利用它來屏蔽底層硬體的差異,提供了一套非常系統性的方法。我尤其欣賞書中對於「非對稱多處理」(AMP) 和「對稱多處理」(SMP) 的比較與應用探討,這兩種架構在不同的情境下有著各自的優勢,書中透過範例,清晰地展示了如何選擇與實作,這對我在設計多核心系統時,提供了重要的決策依據。另外,書中對於「除錯」(Debugging) 和「性能分析」(Profiling) 的技巧,也相當實用,提供了許多偵測與解決系統瓶頸的有效方法,這在快速迭代的開發過程中,絕對是不可或缺的技能。
评分拿到這本書,老實說,一開始我對於「DaVinci SOC平台」這個名詞有點陌生,畢竟我過去開發的經驗主要集中在ARM架構的微控制器,對TI這個廠牌的處理器家族認識不算太深入。但翻開內頁,作者的切入點非常紮實,從硬體架構的剖析開始,一步步講解了DDR、PLL、Cache等核心元件的運作原理,這對我這種喜歡追根究柢的工程師來說,簡直是醍醐灌頂。書中對於多核心的同步與協調,也提供了非常清晰的闡述,像是互斥鎖、信號量等,還有如何利用中斷與事件進行異步通訊,這些都是在真實專案中必不可少的技巧。更讚的是,書中並沒有停留在理論層面,而是結合了實際的程式碼範例,讓我可以邊讀邊動手,驗證書中的概念,這種「學以致用」的感覺,真的非常棒。尤其是書中提到的驅動程式開發,如何與Linux Kernel深度整合,以及如何進行效能調校,這是我一直想突破的瓶頸,這本書提供了相當寶貴的指引。
评分身為一個資深的嵌入式系統開發者,我手上看過的相關書籍不在少數,但真正能夠讓我眼睛一亮的,說實話不多。這本《雙核心嵌入式系統開發》絕對是其中之一。它並非泛泛而談,而是針對DaVinci SOC這個特定平台,進行了深入且全面的解析。作者的邏輯思緒非常清晰,從底層硬體架構開始,循序漸進地引導讀者理解雙核心處理器如何協同工作,以及在記憶體管理、處理器調度、周邊介面存取等方面的最佳實踐。最令我印象深刻的是,書中對於多執行緒程式設計的闡述,不僅涵蓋了理論基礎,更提供了許多實用的技巧和注意事項,像是如何避免死鎖、如何優化執行緒間的通訊效率,這些都是在複雜系統開發中常常遇到的難題。此外,書中對於Linux作業系統在DaVinci平台上的應用,也有相當詳細的介紹,包括了核心的配置、模組的開發、以及系統的調優,這些內容對於想要深入掌握這個平台的開發者來說,絕對是不可或缺的寶藏。
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 ttbooks.qciss.net All Rights Reserved. 小特书站 版权所有