Вступ
Wednesday, September 2, 2009 2:08:51 PM
Книга починається із стислого огляду ідеології розробки ARM структури, і описує як і чому вона відрізняється від традиційної RISC ідеології. Перший розділ дає вступ до найпростішої вбудованої системи яка основана на ARM процесорі.
Розділ 2 дає більш глибокий опис апаратного забезпечення, концентруючись на ядрі ARM процесора, і дає огляд ARM ядер, які на даний час доступні на ринку.
Набори команд ARM і Thumb описані в розділах 3 і 4 відповідно, і формують основу цієї книги. Описи ключових команд включають в себе закінчені приклади, так що ці розділи можуть бути використані як навчальні по наборах команд.
Розділи 5 та 6 показують як писати ефективний код, із великою кількістю прикладів, які ми розробили коли працювали із користувачами ARM. Розділ 5 навчає випробуваним прийомам і правилам стилю мови С, який ефективно компілюється для ARM архітектури, і допомагає визначити, де код може бути оптимізований. Розділ 6 деталізує найкращі способи для написання і оптимізації ARM асемблерного коду — критичного для збільшення продуктивності системи при зменшенні споживання та тактової частоти процесора.
Оскільки елементарні обчислювальні операції (примітиви) використовуються для побудови цілого ряду складних алгоритмів, важливо вивчити всі можливості для їх оптимізації. Розділ 7 описує можливості оптимізації елементарних обчислювальних операцій відповідно до специфіки ARM процесорів. Він містить описи оптимальної реалізації поширених примітивів, а також більш складних математичних операцій для тих, хто хоче отримати більш детальну інформацію. Разом із кожним прикладом міститься теоретичний матеріал для можливості краще зрозуміти його.
Все більшу популярність набувають різноманітні відео та аудіо вбудовані системи. Вони потребують застосування цифрової обробки сигналів (DSP), для виконання якої необхідно застосовувати окремий DSP процесор. Тим не менше на даний час ARM архітектура дозволяє отримати вищу пропускну здатність пам'яті та швидшу операцію множення із накопиченням, надаючи можливість використати єдине ARM ядро для підтримки таких прикладних задач. Розділ 8 показує, як збільшити продуктивність ARM при цифровій обробці а також реалізацію DSP алгоритмів.
В основі вбудованої системи лежить обробка виключних ситуацій (exception handler). Ефективні обробники можуть різко збільшити продуктивність системи. Розділ 9 містить теорію і практику обробки виключних ситуацій та переривань ARM процесором, та включає ряд детальних прикладів.
Вбудоване програмне забезпечення (firmware), як важлива частина будь якої вбудованої системи, описана в розділі 10 на прикладі простого пакету вбудованого ПЗ, розробленого авторами, іменованого Sandstone. В розділі проведений огляд поширеного промислового вбудованого ПЗ, доступного для ARM.
Розділ 11 демонструє реалізацію вбудованих операційних систем на прикладі Simple Little Operating System.
Розділи 12, 13 та 14 присвячені використанню пам'яті. В розділі 12 розглянута організація кешів. Розділ 13 обговорює блок захисту пам'яті, розділ 14 - блок керування пам'яттю.
На закінчення, в розділі 15 розглянуто перспективи ARM архітектури, висвітлено нові напрями в наборах команд та нових технологіях, які ARM впроваджуватиме в наступні декілька років.
Додатки містять детальні описи наборів команд, таймінги циклів і специфіку ARM продуктів.
Розділ 2 дає більш глибокий опис апаратного забезпечення, концентруючись на ядрі ARM процесора, і дає огляд ARM ядер, які на даний час доступні на ринку.
Набори команд ARM і Thumb описані в розділах 3 і 4 відповідно, і формують основу цієї книги. Описи ключових команд включають в себе закінчені приклади, так що ці розділи можуть бути використані як навчальні по наборах команд.
Розділи 5 та 6 показують як писати ефективний код, із великою кількістю прикладів, які ми розробили коли працювали із користувачами ARM. Розділ 5 навчає випробуваним прийомам і правилам стилю мови С, який ефективно компілюється для ARM архітектури, і допомагає визначити, де код може бути оптимізований. Розділ 6 деталізує найкращі способи для написання і оптимізації ARM асемблерного коду — критичного для збільшення продуктивності системи при зменшенні споживання та тактової частоти процесора.
Оскільки елементарні обчислювальні операції (примітиви) використовуються для побудови цілого ряду складних алгоритмів, важливо вивчити всі можливості для їх оптимізації. Розділ 7 описує можливості оптимізації елементарних обчислювальних операцій відповідно до специфіки ARM процесорів. Він містить описи оптимальної реалізації поширених примітивів, а також більш складних математичних операцій для тих, хто хоче отримати більш детальну інформацію. Разом із кожним прикладом міститься теоретичний матеріал для можливості краще зрозуміти його.
Все більшу популярність набувають різноманітні відео та аудіо вбудовані системи. Вони потребують застосування цифрової обробки сигналів (DSP), для виконання якої необхідно застосовувати окремий DSP процесор. Тим не менше на даний час ARM архітектура дозволяє отримати вищу пропускну здатність пам'яті та швидшу операцію множення із накопиченням, надаючи можливість використати єдине ARM ядро для підтримки таких прикладних задач. Розділ 8 показує, як збільшити продуктивність ARM при цифровій обробці а також реалізацію DSP алгоритмів.
В основі вбудованої системи лежить обробка виключних ситуацій (exception handler). Ефективні обробники можуть різко збільшити продуктивність системи. Розділ 9 містить теорію і практику обробки виключних ситуацій та переривань ARM процесором, та включає ряд детальних прикладів.
Вбудоване програмне забезпечення (firmware), як важлива частина будь якої вбудованої системи, описана в розділі 10 на прикладі простого пакету вбудованого ПЗ, розробленого авторами, іменованого Sandstone. В розділі проведений огляд поширеного промислового вбудованого ПЗ, доступного для ARM.
Розділ 11 демонструє реалізацію вбудованих операційних систем на прикладі Simple Little Operating System.
Розділи 12, 13 та 14 присвячені використанню пам'яті. В розділі 12 розглянута організація кешів. Розділ 13 обговорює блок захисту пам'яті, розділ 14 - блок керування пам'яттю.
На закінчення, в розділі 15 розглянуто перспективи ARM архітектури, висвітлено нові напрями в наборах команд та нових технологіях, які ARM впроваджуватиме в наступні декілька років.
Додатки містять детальні описи наборів команд, таймінги циклів і специфіку ARM продуктів.








