thiết kế kits nhúng và lập trình nhúng
! "# Đề Tài: $$% &'% ()*+,, ,(/,--(01()234*5,( 06789(5,(:)* Trang 1 !"# $% &'()(* +,' +/0'1( ' 2345678)9:3 ;<=>?>@A "#,-(70; 83+,<7,(=7+,>?.@(A,(A7 >BC??DBEF G > ()*+, ,(>/,--(01()234*5,( H ,(> 0I.@36@>67(899(5,(J)* H(0> (KA>GBBC &L;>BC??DB MN $$%&'% O O MPQ>(R*SS Trang 2 MQ &TU BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB Trang 3 &VS BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB Trang 4 WXMV BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB Trang 5 WXMPQ Trang 6 & (70Y=ZI[4, (2,\]39^A-74@=7+,;(_,`70, (2,\]39^A-74@=7+,(aL,-bc, &d7,K7IR) &d79_Ye, Z9fZ9 &703g+9493h=7i33j3 UTU ? KY3j3Ik3.7 G &lb@9(8,Ik3.7 m Z9I59(,-(7+,9n) o p73aq,-=.;(6Y=7,-(7+,9n) E r,-(sAg(@A(89=.3(t937u,Ik3.7 U>$$ U>&'% U>$v Trang 7 Trang 8 UTU &d7K7R) CDE4<?CDE3FGH3IJAK;?L8MN3N3IJOPJM9<=G= 3:?G3N?QRS?T33OUVA7WDX?Y5?OPZY[DSA\]33FG 3Y23OP?^_?C?R`MaUMCb3?96c7W[d5=4<7833?@ 78DX?Y5?OPMeA49L?AG=?LY?fA3FG33OUVADX?Y5?OP<=4<33R2gh 4ijL83eOO8LOk L[K3DG33J?POPl;mG=R?MnM[o3Oh7WLp?L2LnY=qJG= MG3bDCO67`33Y=QA9ArOG33?C?DCsR?78H[YMQA3FG ?C?DCsR?MbM[o333=qY3ZY<=3<3G83FG?`?L[tj33OUVA3G8 3pdKuY?@b3?9;G87JRS?AS?d<?f?J;?<U3@;3I OYp??qY?W?pk L833?C?DCsR?J<;?C?DCsR?76G?LqDC?L:3'MGd<Or? ?LQLp?A9Ar;3CA[Y?C7833[YMQAd[o??L2A<NAG49O8dK33MP?F 39?LGD3[v Cung cấp giải pháp trọn gói cho thiết kế SoC (System On Chip) bao gồm các bộ xử lý 32 bit dựa trên tập lệnh RISC cao cấp, các hệ thống bus tốc độ cao tiên tiến, tổ chức bộ nhớ thông minh, các IPs (Interlectual Property) và các công cụ phát triển tốt nhất. Nhờ đó mà các giải pháp thiết kế 32 bit do ARM cung cấp đem lại khả năng tích hợp hệ thống cao nhất (hight speed and small die size). Đem đến chất lượng cao mà giá cả phải chăng thông qua một loạt các giải pháp như: tối ưu chất lượng/dung lượng mã, công nghệ Thumb-2, … Hiện nay các thiết kế vi xử lý dựa trên kiến trúc ARM đem lại công suất tiêu thụ thấp nhất, một đặc điểm rất quan trọng đối vói các sản phẩm số hiện đại. ARM cung cấp các công cụ hỗ trợ phát triển cả cứng (Prime Cells) lẫn mềm (ví dụ OS và Middle ware) tốt và rộng nhất cho các kiến trúc ARM 32 bit. Kiến trúc ARM đem lại cho người dùng sự lựa chọn rộng rãi nhất về hỗ trợ phát triển ứng dụng dựa trên hệ điều hành (OS) như: hỗ trợ Windows Mobile, Windows Embedded CE, Symbian OS, Embedded Linux, FreeRTOS, …. Trang 9 Với hơn 5 tỷ bộ xử lý đã được bán ra và được sử dụng thành công trong rất nhiều sản phẩm cao cấp (Advanced high end products), các giải pháp về OS của ARM đã chiếm đươc sự tin cậy của các nhà phát triển sản phẩm. Không bằng lòng với những gì đã và đang đạt đươc, ARM cam kết cộng tác chặt chẽ với các công ty phát triển hệ điều hành nhằm đáp ứng yêu cầu càng cao của thị trường. Rút ngắn đáng kể thời gian từ lúc phát triển đến lúc sản phẩm được đưa ra thi trường nhờ sự hỗ trợ rộng rãi và mạnh mẽ của các công cụ hỗ trợ tốt và tin cậy do ARM và cộng đồng ARM đem lại. Chẳng hạn như việc cung cấp các IPs có khả năng sử dụng lại, các platform mẫu, … cũng như công cụ phát triển phần mềm RV MDK (RealView Microcontroller Development Kit), RVDS (RealView Development Suit), RealView ICE, Trong đó nổi bật là hai công cụ phát triển chuyên nghiệp RVDS Pro (tích hợp tính năng Profilers và RTSM -Real Time System Model) và RealView ICE do ARM cung cấp nhằm đem lại tính ưu việt của các sản phẩm so với các đối thủ cạnh tranh như: độ tin cậy và bền vững, tỷ giá chất lượng/giá thành cao, tương thích với phát triển tương lai, … Chính nhờ các công nghệ và công cụ phát triển tin cậy, chất lượng cao như vậy mà ARM đã rất thành công trong việc giúp việc biến các ý tưởng thành các sản phẩm được người tiêu dùng và thị trường đánh giá rất cao. Sự tin cậy và chất lượng cao thể hiện rõ nhất ở lượng hàng tỷ chip xử lý được bán ra và con số này không ngừng tăng lên. Các giải pháp thiết kế dựa trên kiến trúc ARM 32 bit mà ARM cung cấp đã đưa đến các hệ EcoSystems. ARM cam kết đầu tư không ngừng vào R&D nhằm cung cấp và đáp ứng ngày càng tốt hơn các yêu cầu của thị trường và nắm bắt được các xu thế tương lai. Điều đó được minh chứng qua các thành công của ARM trong việc phát triển các công nghệ tiên tiến IPs, Neon, Multi media, TrustZone, VFP, Thumb-2, Java Jazelle … Công nghệ bảo mật hàng đầu thế giới (Công nghệ TrustZone) Hiện nay ARM cung cấp rất nhiều dòng xử lý (ARM7, ARM9, Cortex … ) nhằm đáp ứng các giải pháp khác nhau: thiết bị gia dụng (TV, tủ lạnh, …), giải pháp về thiết bị di động (điện thoại di động thông minh, gaming, camera,….), giải pháp nhúng (ô tô, máy bay, hệ thống đo và điều khiển tự động công nghiệp …) … Chẳng hạn dòng ARM A-profile hướng đến các ứng dụng đòi hỏi tính năng cao, dòng ARM R-profile hướng đến các hệ Real time, còn dòng ARM M-profile hướng đến các ứng dụng nhúng. ARM hiện nay là kiến trúc vi xử lý được hỗ trợ rộng rãi và tốt nhất thông qua ARM, các đối tác và cộng đồng ARM (Microsfoft, Linux, Apple ….). wJG=3IJ'M[o3Oh7W?Lqxy33A=MJ?897M2 waxyMJ?897M2Oh7W?p?A2?3' wx?LJY'3M[o3gYp?g[z<<= Trang 10 [...]... thiết kế các hệ nhúng hiện 25 nay đòi hỏi có khả năng thay đổi mềm dẻo hơn trong quá trình thiết kế 2 phần HW và SW Để có được thiết kế cuối cùng tối ưu quá trình thiết kế SW và HW phải phối hợp với nhau chặt chẽ và có thể thay đổi sau mỗi lần thử chức năng hoạt động tổng hợp - Thiết kế các hệ nhúng đòi hỏi kiến thức đa ngành về điện tử, xử lý tín hiệu, vi xử lý, thuật điều khiển và lập trình. .. Cách thiết kế cổ điển là các chức năng phần mềm (SW) và phần cứng (HW) được xác định trước rồi sau đó các bước thiết kế chi tiết được tiến hành một cách độc lập ở hai khối Hiện nay đa số các hệ thống tự động hoá thiết kế (CAD) thường dành cho thiết kế phần cứng Các hệ thống nhúng sử dụng đồng thời nhiều công nghệ như vi xử lý, DSP, mạng và các chuẩn phối ghép, protocol, do vậy xu thế thiết. .. người phát triển hệ thống có thể sử dụng phần mềm workbench như MathCad hoặc Mathematica để mô phỏng các phép toán • Các trình biên dịch và trình liên kết (linker) chuyên dụng được sử dụng để tối ưu hóa một thiết bị phần cứng • Một HTN có thể có ngôn ngữ lập trình và công cụ thiết kế riêng của nó hoặc sử dụng và cải tiến từ một ngôn ngữ đã có sẵn - Các công cụ phần mềm có thể được tạo ra bởi các... vi xử lí còn tích hợp cả thiết bị ngoại vi - Thiết kế các HTN là thiết kế phần cứng và phần mềm phối hợp bao gồm những bước sau: • • Phân bố chức năng cho phần cứng và mềm (HW-SW) • Đồng bộ hoạt động của hệ thống • Trang Chi tiết hoá các khối chức năng • - Mô hình hoá hệ thống: Mô tả các khối chức năng với các đặc tính và thuật toán xử lý Cài đặt các chức năng thiết kế vào phần cứng (hardware)... integrated circuit – ASIC) Sau đó nhân CPU được mua và thêm vào như một phần của thiết kế chip Một chiến lược tương tự là sử dụng FPGA (field-programmable gate array) và lập trình cho nó với những thành phần nguyên lý thiết kế bao gồm cả CPU 4.3 Trang 18 Thiết bị ngoại vi: HTN giao tiếp với bên ngoài thông qua các thiết bị ngoại vi • • Serial Communication Interfaces (SCI): RS-232, RS-422, RS-485... nhờ việc sử dụng các trình biên dịch (compilers), chương trình dịch hợp ngữ (assembler) hoặc các công cụ gỡ rối (debuggers) Tuy nhiên, các nhà thiết kế HTN có thể sử dụng một số công cụ chuyên dụng như: • • Bộ gỡ rối mạch hoặc các chương trình mô phỏng (emulator) Tiện ích để thêm các giá trị checksum hoặc CRC vào chương trình, giúp HTN có thể kiểm tra tính hợp lệ của chương trình đó • Đối với các... triển chương trình nạp và thực hiện thử nghiệm các chương trình trên phần cứng đích Một số các công cụ hỗ trợ ví dụ như để thiết lập các điểm dừng (breakpoint)…và các nhiệm vụ phụ trợ khác để bám sát trạng thái quá trình thực thi thời gian thực của chương trình thử nghiệm Điều này rất có ý nghĩa và tạo nên một sự dễ dàng hơn trong quá trình phát triển và gỡ rối một chương trình ứng dụng... các nhà thiết kế có thể tối ưu hóa nó nhằm giảm thiểu kích thước và chi phí sản xuất Các HTN thường được sản xuất hàng loạt với số lượng lớn HTN rất đa dạng, phong phú về chủng loại Đó có thể là những thiết bị cầm tay nhỏ gọn như đồng hồ kĩ thuật số và máy chơi nhạc MP3, các thiết bị điện tử dân dụng (máy giặt, tủ lạnh, TV ), các thiết bị điện tử “thông minh” (điện thoại di động), thiết. .. Trang 22 - Hoạt động của HTN đươc thực hiện theo chương trình, gồm các tác vụ (task) hoặc luồng (thread) trong việc đáp ứng các tín hiệu ngõ vào hay trong quá trình xử lý bình thường theo yêu cầu của hệ thống Các quá trình xử lý phải trả về kết quả đúng trong một khoảng thời gian xác định 8 Chương trình, tác vụ và luồng: - Một chương trình trên một HTN chính là một phần mềm có khả năng thực... của HTN trong một thiết bị phần cứng Do đó, đây cũng là sự khác biệt giữa một HTN và một PC Một HTN cũng có khả năng tương tác với thế giới bên ngoài, tuy nhiên giao diện người sử dụng của nó lại thường khá đơn giản Lĩnh vực HTN đòi hỏi sự kết hợp của nhiều ngành lại với nhau như: kỹ thuật phần mềm, hệ điều hành, thiết kế phần cứng (chip) … Vì vậy, một kỹ sư thiết kế HTN phải có khả . pháp thiết kế dựa trên kiến trúc ARM 32 bit mà ARM cung cấp đã đưa đến các hệ EcoSystems. ARM cam kết đầu tư không ngừng vào R&D nhằm cung cấp và. được đưa ra thi trường nhờ sự hỗ trợ rộng rãi và mạnh mẽ của các công cụ hỗ trợ tốt và tin cậy do ARM và cộng đồng ARM đem lại. Chẳng hạn như việc cung