Lời cảm ơn
Phần mở đầu
Chương 1: Tổng quan về bộ vi xử lý ARM
1. Giới thiệu về bộ vi xử lý ARM.
1.1. Tổng quan về vi xử lý arm
Trong khoảng 5 năm trở lại đây, cái tên ARM được nhắc đến rất nhiều đi cùng theo
sự phát triển của smartphone, tablet. Nếu như trên mảng PC chúng ta có Intel, AMD thì trên
mảng di động, ARM cũng "nổi tiếng" với mức độ tương đương bởi vì kiến trúc vi xử lí của
họ được sử dụng trong hầu hết các thiết bị di động đang có mặt trên thị trường.Bài viết này
sẽ cung cấp cho bạn một cái nhìn chi tiết về vị trí của ARM hiện tại cũng như con đường
trong tương lai gần của hãng
Tên đây đủ của hãng là ARM Holdings và đóng trụ sở chính tại Anh Quốc. Ban đầu,
chữ ARM viết tắt cho cụm từ Acom RISC Machine, trong đó RISC là một cách thiết kế vi
xử lí (sẽ nói kĩ hơn ở bên dưới), nhưng sau đó chữ Acorn đã được thay bằng chữ Advanced.
Kiến trúc ARM được phát triển lần đầu tiên vào thập niên 1980 để dùng cho máy tính để
bàn. Tính đến thời điểm hiện tại (2013), ARM là kiến trúc tập lệnh chỉ dẫn 32-bit được phổ
biến nhất thế giới, vượt qua cả kiến trúc x86 của Intel, tính theo số lượng chip được sản
xuất. Theo ARM Holdings, chỉ tính riêng năm 2010, kiến trúc của họ đã có mặt trên 95% số
smartphone, 35% số TV và set-top box, 10% số máy tính di động được bán ra.
Kiến trúc ARM được tạo ra dựa trên thiết kế RISC (Reduced instruction set
computing, tạm dịch là "tập chỉ dẫn điện toán được giản lược"). Thiết kế này giúp giảm
đáng kể số lượng bóng bán dẫn cần thiết để vận hành một chiếc máy tính so với kiểu CISC
(complex instruction set computer, tạm dịch là "tập chỉ dẫn máy tính phức tạp"), vốn được
sử dụng phổ biến trong kiến trúc x86 của Intel cũng như các CPU AMD dành cho máy tính.
Lợi ích của việc sử dụng RISC đó là các con chip được sản xuất với chi phí thấp hơn, lượng
nhiệt tỏa ra khi hoạt động thấp hơn, mức độ tiêu thụ điện thấp hơn. Chính vì thế, những bộ
xử lí ARM thường được dùng trong các thiết bị di động đòi hỏi thời lượng pin lâu và kiểu
dáng nhỏ, nhẹ, điển hình là smartphone và tablet ngày nay.
Theo trang tin công nghệ của Anh ITProPortal, hãng ARM (Apple là một trong
những nhà đồng sáng lập), phát triển nhanh chóng là do hoạt động theo một mô hình doanh
nghiệp khác hẳn so với đối thủ chính của mình là Intel. Không chỉ thiết kế, sản xuất và bán
chip (gồm hệ thống trên một vi mạch SoC hay bộ vi xử lí), ARM còn cho phép các công ty
đối tác tiếp tục phát triển chip nền ARM và chỉ thu phí bản quyền và tiền sở hữu trí tuệ khi
các đối tác đó kiếm được lợi nhuận.
Do đó, doanh thu của ARM chỉ đạt 0,5 tỉ bảng Anh, ít hơn nhiều so với doanh thu 34
tỉ bảng của Intel. Tuy nhiên, khoản vốn mà ARM bỏ ra là rất nhỏ (trong khi Intel phải chi
hơn 10 tỉ USD tiền vốn năm 2011) và mô hình kinh doanh của hãng ổn định hơn do phần
lớn cổ đông của hãng là các công ty sản xuất chất bán dẫn nằm trong top 20 của thế giới.
1
Vì thế, cạnh tranh với hãng ARM đồng nghĩa với việc phải đối đầu với các công ty
lớn như Samsung, LG, Panasonic hay Nvidia…, và sự nổi lên của hãng này trên thị trường
tiêu thụ rộng lớn hơn chủ yếu là do thị trường các thiết bị di động đang bùng nổ mạnh mẽ.
Trong số hàng trăm triệu sản phẩm smartphone và máy tính bảng đã được bán ra
trong vài năm trở lại đây thì hơn 90% sử dụng công nghệ ARM trên các sản phẩm SoC (hệ
thống trên một con chip, hệ thống trên một vi mạch).
Ta cần phải hiểu rõ một số điểm sau:
Các khái niệm Hệ thống trên một vi mạch SoC, chip vi xử lí và chipset thường bị sử
dụng lẫn lộn với nhau. Hiểu một cách đơn giản thì hệ thống trên một vi mạch SoC là
khái niệm được các chuyên viên kĩ thuật và các nhà phân tích dùng chủ yếu để chỉ
một hệ thống tích hợp nhiều thành phần bao gồm CPU, hệ thống đồ họa thứ cấp, bộ
nhớ và một vài thành phần khác. SoC đôi khi được coi như là một bộ xử lí ứng dụng.
Khái niệm bộ vi xử lí (hay bộ xử lí di động) được dùng ngày càng nhiều vì khái niệm
này dễ hiểu đối với người dùng hơn trong khi thuật ngữ chipset dùng để chỉ các
thành phần phụ bổ sung thêm vào hệ thống trên một vi mạch, ví dụ như vi mạch tần
số phát sóng.
Hãng ARM không sản xuất bộ vi xử lí. Hãng này chỉ cấp giấy phép để các đối tác
của mình có thể dùng theo nhu cầu của họ. Nói một cách ngắn gọn, thời gian cần
thiết để sản xuất ra một hệ thống trên một vi mạch SoC có thể được giảm xuống một
cách đáng kể nhờ việc sử dụng những thiết kế sẵn có (các thiết kế sẵn có này khá ổn
định, và được gọi là Hard Macro). Các đối tác có giấy phép nền tảng ARM có thể
toàn quyền sáng tạo sản phẩm của mình. Apple, Nvidia, Cavium, Marvell, TI,
Qualcomm, AppliedMicro, Microsoft và Intel đều có trong tay giấy phép quan trọng
và đắt giá đó.
Hãng ARM cũng thiết kế một bộ phận quan trọng thuộc hệ thống SoC, đó là bộ xử lí
đồ họa GPU Mali, sử dụng công nghệ đồ họa mua lại từ nhà sản xuất chip đến từ Na
Uy - Falanx vào tháng 6 năm 2006. Điều này có nghĩa là một công ty đối tác có thể
sử dụng bộ xử lí đồ họa và bộ vi xử lí từ hãng ARM và các thành phần từ các nhà sản
xuất khác để lắp ghép lại thành hệ thống SoC. Công ty đối tác đó có thể lựa chọn
hoặc là cải tiến công nghệ (điều này sẽ làm tăng thời gian sản xuất và yêu cầu đầu tư
nghiên cứu, phát triển) hoặc giữ nguyên phiên bản hiện có để bán ra thị trường càng
nhiều càng tốt.
ARM hiện có trong tay khoảng 900 giấy phép bản quyền với gần 300 trong số đó liên
quan đến bộ vi xử lí Cortex nền ARM thế hệ mới nhất. Theo thống kê thì hai tỉ chip
nền ARM đã được bán ra trong quý 2/2012, đem về cho hãng ARM trung bình
khoảng 0,03 bảng mỗi chip.
Theo một bản báo cáo công bố bởi công ty nghiên cứu thị trường Strategy Analytics
vào tháng Tám vừa qua, thì Qualcomm với hệ thống SoC đã đạt mức doanh thu gần
1,1 tỉ USD, tương đương 44% toàn bộ thị trường, và trở thành nhà sản xuất chip nền
ARM lớn nhất hiện nay. Xếp sau Qualcomm là Samsung, hãng Texas Instruments,
Broadcon, Mediatek và Marvell.
Apple cũng là một trong số các nhà sản xuất chip nền ARM. Tuy nhiên, Apple không
bán ra bất kì SoC nào mà tất cả các thiết kế của hãng (bao gồm các mẫu phổ biến trên
thị trường như chip A4, A5, A6) đều được dùng độc quyền cho các thiết bị của mình
bao gồm iPad, iPhone, iPod Touch và TV Apple.
2
Hình 1.1. Các thiết kế chip của Apple đều do hãng sử dụng độc quyền
Khác với thị trường chip nền x86 chỉ có 2 nhà sản xuất chính (Intel và AMD) và một
hệ điều hành (Windows), hệ thống di động nền ARM tạo nên bởi hơn 10 công ty hoạt động
trên nhiều hệ điều hành (iOS, Android, Windows Phone, Blackberry, Tizen) khiến cho việc
so sánh hoạt động của từng hãng trở thành một việc mang đầy tính suy đoán và mạo hiểm.
Dưới đây là danh sách các công ty sản xuất thiết bị chất bán dẫn có sản phẩm chủ
yếu nhắm vào ngành smartphone và máy tính bảng.
Công ty
Dòng sản phẩm
Sản phẩm
Qualcomm
Snapdragon
Sony Xperia, HTC One, Motorola Razr M,
và các smartphone hỗ trợ mạng LTE trên thị
trường.
Samsung
Exynos
Apple
Dòng chip Ax
ST-Ericsson
Novathor
Nvidia
Tegra
Hầu hết các sản phẩm máy tính bảng và
smartphone Galaxy của Samsung.
iPhone, iPad
Sony Xperia U và Sony Xperia Sola
Hầu hết máy tính bảng Android, Microsoft
Surface, dòng HTC One X và dòng LG
Optimus 4x
Máy tính bảng Archos, một số loại
smartphone Huawei, điện thoại Motorola
đời cũ
TI
OMAP
Broadcom
Dòng BCM
AllWinner
Dòng A
Chủ yếu các sản phẩm máy tính bảng và
smartphone của Trung Quốc
Marvell
Armada
HP Palm Pre
Rockchip
Dòng RK
Chủ yếu trong các loại máy tính bảng và
smartphone Trung Quốc
Mediatek
MTK
Chủ yếu trong các loại máy tính bảng và
Một số điện thoại Nokia
3
smartphone Trung Quốc
Huawei/HiSillicon
KV3
Smartphone Huawei Ascend P1D và máy
tính bảng Media Pad
Freescale
i.MX
Nhiều máy tính bảng của Trung Quốc
Matsubishi/Panasonic
Uniphier
Các thiết bị nghe nhìn của Panasonic
Hình 1.2. Kiến trúc của ARM
Với phần lớn người lập trình nhúng, thường hay có thói quen sử dụng một dòng vi xử
lý thông dụng ví dụ như 8051, AVR, PIC... Mỗi khi muốn nâng cấp hay nghiên cứu một sản
phẩm mới, ngoài việc phải coi lại kiến trúc phần cứng, điều quan trọng là làm thế nào để
chạy những chương trình ứng dụng đang hoạt động tốt ở vi xử lý cũ. Nắm bắt được hạn chế
này, các nhà sản xuất phần cứng đã cùng hợp tác và cho ra đời dòng vi xử lý ARM với
những chuẩn phần cứng đáp ứng khả năng tương thích với phần mềm. Phần lõi ARM được
cấp phép sở hữu trí tuệ (Intellectual Property), và tuân theo chuẩn phần cứng ARM, các
phần ngoại vi thì tùy thuộc vào nhà sản xuất sẽ có những quy định riêng về hệ thống thanh
ghi và tập lệnh bổ sung.
4
Hình 1.3. Lịch sử phát triển từ kiến trúc ARMv4 đến ARMv7
Lõi ARM Cortex được chia ra thành ba dòng cấu hình chính, với các ký hiệu viết tắt
lần lượt là: A, R, M. Chữ A là viết tắt của Application, lõi ARM dòng này hỗ trợ cho các
ứng dụng có độ phức tạp cao như: máy tính, điện thoại di động... R là viết tắt của Realtime,
các ứng dụng cần tính toán xử lý thời gian thực được hỗ trợ bởi cấu hình này. M là
Microcontroller, dành cho các ứng dụng công nghiệp và điện tử tiêu dùng. Hình trên cho
thấy các kiến trúc sau v5,v6,v7 đều kế thừa từ v4T.
1.2. Vi xử lý S3C6410
1.2.1. Tổng quan
S3C6410X là một bộ vi xử lý RISC 16/32-bit , được thiết kế để cung cấp một chi phí
-hiệu quả, khả năng tiết kiệm điện , hiệu suất cao ứng dụng giải pháp xử lý cho điện thoại di
động và các ứng dụng chung , cung cấp tối ưu hóa hiệu suất cho các dịch vụ truyền thông
5
2.5G và 3G, S3C6410X thông qua kiến trúc bus 64/32-bit nội bộ. Các kiến trúc bus 64/32bit nội bộ bao gồm AXI , AHB và APB bus. Nó cũng bao gồm rất nhiều bộ xử lý mạnh
phần cứng cho các tác vụ như xử lý video chuyển động , xử lý âm thanh , đồ họa 2D , thao
tác màn hình hiển thị và mở rộng quy mô . Tích hợp nhiều định dạng Codec ( MFC ) hỗ trợ
mã hóa và giải mã MPEG4/H.263/H.264 và giải mã VC1 . Mã hóa / giải mã hỗ trợ hội nghị
truyền hình thời gian thực và truyền hình ra cho cả hai chế độ NTSC và PAL .
Các S3C6410X có một giao diện tối ưu bộ nhớ bên ngoài. Giao diện này tối ưu bộ nhớ
bên ngoài có khả năng duy trì băng thông bộ nhớ cao yêu cầu trong dịch vụ truyền thông
cao cấp . Hệ thống bộ nhớ có cổng bên ngoài bộ nhớ kép , DRAM và Flash / ROM . Cổng
DRAM có thể được cấu hình để hỗ trợ
điện thoại di động DDR , DDR , SDRAM điện thoại di động và SDRAM . Cổng Flash /
ROM hỗ trợ NOR Flash, NAND Flash, OneNAND , CF và ROM loại bộ nhớ ngoài.
Để giảm chi phí hệ thống và tăng cường chức năng tổng thể, bao gồm nhiều thiết bị
ngoại vi S3C6410X phần cứng như một giao diện máy ảnh , màn hình TFT màu sắc trung
thực 24-bit điều khiển màn hình LCD, hệ thống quản lý ( quản lý điện ...), 4 kênh UART ,
32 kênh DMA , 5 kênh Thời Gian 32bit với sản lượng 2PWM , GPIO , I2S -Bus giao diện ,
giao diện I2C -BUS , USB Host , USB OTG thiết bị hoạt động ở tốc độ cao ( 480Mbps ) , 3
kênh SD / MMC Host Controller và PLLs cho thế hệ đồng hồ .
Các hệ thống phụ ARM dựa trên lõi ARM1176JZF - S . Nó bao gồm 16KB bộ nhớ
riêng và 16KB data cache , 16KB bộ nhớ và 16KB data TCM . Nó cũng bao gồm một
MMU đầy đủ để xử lý quản lý bộ nhớ ảo .
Các ARM1176JZF - S là một chip MCU duy nhất, bao gồm hỗ trợ cho JAVA. Các
ARM1176JZF – S bao gồm một vector Coprocessor điểm nổi chuyên dụng cho phép thực
hiện hiệu quả của mã hóa khác nhau chương trình cũng như chất lượng các ứng dụng đồ họa
3D cao . Các S3C6410X thông qua các AMBA de - facto kiến trúc bus tiêu chuẩn, các tính
năng tiêu chuẩn công nghiệp mạnh mẽ cho phép các S3C6410X để hỗ trợ rất nhiều các
ngành công nghiệp hệ điều hành tiêu chuẩn.
Cung cấp hai loại sản phẩm POP mà là dựa trên S3C6410X .
PoP 6410X LOẠI Alà một POP (gói trên gói ) sản phẩm xếp chồng lên nhau với S3C6410X
và bộ nhớ MCP (2G OneNAND + 512Mb Moblie DDR x 2ea )
Các 6410X PoP Loại D là một POP (gói trên gói ) sản phẩm xếp chồng lên nhau với
S3C6410X và bộ nhớ MCP ( 2Gb NAND + 512Mb OneDRAM + 512MB Mobile DDR )
1.2.2. Tính năng
6
Hình 1.4. Sơ đồ khối S3C6410
Các tính năng của S3C6410X RISC bao gồm:
• ARM1176JZF - S dựa trên hệ thống con với dụng cụ tăng tốc Java và 16KB/16KB I/D
cache CPU và 16KB/16KB I/D TCM .
• Tốc độ xử lý 533MHz tại 1.1V và 667MHz tại 1,2 V tương ứng .
• Giao diện máy ảnh 8-bit ITU 601/656 lên đến 4 triệu điểm ảnh cho điểm ảnh thu nhỏ và
16 triệu cho độ phân giải unscaled .
• Định dạng đa Codec cung cấp mã hóa và giải mã MPEG-4/H.263/H.264 lên tới 30fps @
SD và giải mã video VC1 lên đến 30fps @ SD .
• Tăng tốc đồ họa 2D với BitBlit và luân chuyển .
• Tăng tốc đồ họa 3D 4M/s @ 133MHz ( chỉ chuyển đổi )
• Giao diện âm thanh codec AC -97 và giao diện âm thanh nối tiếp PCM.
• 1/2/4bpp Palletized hoặc 16bpp/24bpp Non-Palletize Color -TFT
• I2S và hỗ trợ giao diện I2C .
• Cổng hồng ngoại chuyên dụng cho FIR , MIR và SIR .
• Cấu hình GPIO linh hoạt.
• Cổng USB 2.0 OTG hỗ trợ tốc độ cao cho thiết bị ( 480Mbps , thu phát on-chip) .
• Cổng USB 1.1 hỗ trợ máy chủ tốc độ đầy đủ ( 12Mbps , thu phát on-chip) .
• SD / MMC / SDIO / CE-ATA Host Controller
• Đồng hồ thời gian thực , PLL , hẹn giờ với PWM và Watchdog Timer.
• Điều khiển 32 kênh DMA.
7
• Hỗ trợ ma trận phím 8x8.
• Quản lý điện năng nâng cao cho các ứng dụng điện thoại di động .
• Bộ nhớ hệ thống con
− Giao diện SRAM / ROM / NOR Flash với bus dữ liệu x8 hoặc x16.
− Giao diện muxed OneNAND với bus dữ liệu x16.
− Giao diện NAND Flash với bus dữ liệu x8.
− Giao diện SDRAM với bus dữ liệu x32(Port1).
− Giao diện SDRAM di động với bus dữ liệu x32 (Port1)
− Giao diện DDR với bus dữ liệu x32 (Port1)
− Giao diện DDR di động với bus dữ liệu x32 (Port1)
1.2.3. Vi xử lý
Bộ vi xử lý ARM1176JZF - S kết hợp một đơn vị số nguyên mà thực hiện trên các
kiến trúc ARM ARM11 V6. Nó hỗ trợ ARM , Thumb ™ và công nghệ Jazelle để cho phép
thực hiện trực tiếp của bytecode Java , và một loạt các SIMD DSP hướng dẫn hoạt động trên
16-bit hoặc giá trị dữ liệu 8-bit trong thanh ghi 32-bit .
Các tính năng của bộ xử lý ARM1176JZF - S bao gồm:
• Tốc độ vi xử lý Kiến trúc Bus nâng cao (AMBA) nâng cao mở rộng giao diện ( AXI ) mức
hai giao diện hỗ trợ triển khai đa ưu tiên .
• Đơn vị Integer với bộ EmbeddedICE -RT logic.
• Pipeline tám giai đoạn .
• Cấu hình độ trễ gián đoạn thấp.
• Bộ đồng xử lý CP14 và CP15 .
• Đơn vị quản lý bộ nhớ dữ liệu ( MMUs ) , quản lý sử dụng cấu trúc MicroTLB được hỗ
trợ bởi một thống nhất main TLB.
• Cache dữ liệu và chỉ thị, bao gồm một bộ nhớ cache dữ liệu non-blocking với Hit-UnderMiss (HUM)
• Giao diện chỉ mục và lưu trữ cache địa chỉ vật lý.
• 64-bit cho cả hai Cache .
• Vector Floating-Point ( VFP ) hỗ trợ bộ đồng xử lý.
2. KIT vi xử lý Friendly ARM Tiny 6410.
2.1. Giới thiệu chung
Board S3C6310 là một board máy tính nhúng lõi đơn nhỏ gọn dựa trên nền tảng
Samsung ARM11 S3C6410. Thiết kế đặc biệt cho các thiết bị Internet di động, Notebook,..
Các tính năng cung cấp phổ biến cho các thế hệ Pocket PC và smart phone mới nhất.
Board S3C6410 cho phép dễ dàng phát triển ứng dụng nhúng qua các công cụ tương thích
với máy tính đồng thời đảm bảo độ tin cậy, chắc chắn cho hệ thống. Nhiệt độ có thể chịu
được rơi vào khoảng -20oC đến +70oC nếu không có tản nhiệt cho chip.
Các tính năng khác bao gồm 4 cổng UART, SPI, I2C,1 đồng hồ thời gian thực sử
dụng nguồn riêng, bộ nhớ NAND Flash, bộ nhớ DDRam..
Board hỗ trợ hệ điều hành nhúng wince6.0, Linux 2.6, Android và Ubuntu.
8
2.2. Đặc điểm
•
CPU/SOC : S3C6410, Samsung
•
Core/Clock :ARM1176JZF-S. Mặc định 533 MHz. Lớn nhất 667 MHz.
•
RAM : 256 Mbytes DDR2 (32 bit buss)
•
Flash : 2 Gbyte NAND Flash1 1024 Byte EEPROM trên giao diện IIC
•
LCD : Sharp 4.3” 480x272
•
Touch screen : Tích hợp trong bảng điều khiển Sharp LCD
•
Ethernet : RJ45 10/100M với DM9000
•
Serial : 4 DB9 RS232 COM0, COM1, COM2, COM3
•
USB : 1 MiniUSB Device USB2.0, 1 USB Host USB1.1
•
Audio : Jack cắm Stereo – 3.5mm, Jack cắm Mic
•
TV : Jack cắm tổng hợp RCA ngõ ra TV
•
IR : Đầu thu hồng ngoại
•
SD :SD Card kích cỡ thông thường, hỗ trợ tới 32 Gbytes
•
SDIO : SDIO header cho SDIO Wifi, ... + SPI và IIC.
•
JTAG : Đầu cắm 2x5 10 Pin JTAG
•
LCD : 40 pin header, 2x20, 41 pin Mini/Micro2550 thiết kế cho FFC
•
Camera : CMOS CAM130
•
RTC : Được hỗ trợ pin RTC
•
Software
o
Superboot – Có thể tự động tạo file boot cho bộ nhớ flash bằng thẻ SD
o
Nhân Linux 2.6.x hỗ trợ tất cả I/O.với file hệ thống Qtopia 2.2.0 + Qt + Qt/E
o
Ubuntu : Người sử dụng có thể tải thư viện và driver trên Mini6410.
o
Android 2.0
o
WindowsCE6.0r3 .Net xây dựng sẵn bản Custom/English.
2.3. Phần cứng
9
2.3.1. Sơ đồ khối
Hình 1.5. Sơ đồ khối của board
2.3.2. Thiết kế Nguồn S3C
Nguồn của hệ thống board được cung cấp trực tiếp bởi nguồn 5V/2A.
Ngoài ra các nguồn điện áp khác tạo ra trên board như 3.3V, 1.8V thông qua các
mạch ổn áp từ nguồn cấp 5V.
Vì board Mini2440 không được thiết kế đặc biệt cho các thiết bị cầm tay
nên nó không chứa mạch để quản lí nguồn năng lượng cung cấp. Do đó,
mạch cung cấp được điều khiển thông qua switch S1.
Hình 1.6:
Nơi cấp
nguồn
10
Hình 1.7: Mạch nguyên lý của nguồn vào
Mức điện áp của các thành phần:
VDD_5V: 5V
VDD_IO: 3.3V
VDD_OTG: 3.3V
VDD_OTGI: 1.2V
VDD_Alive: 1.2V
VDD_INT: 1.3V
VDD_ARM: 1.2V
11
VDD_RTC: 3V
VDD_ADC: 3.3V
VDD_MDDR: 1.8V
VDD_AC97:3.3V
VDD_WIFI: 3.3V
Hình 1.8: Sơ đồ khối nguồn vào
2.3.3. Cấu hình chế độ khởi động Bootloader
Chip S3C6410 hỗ trợ nhiều loại chế độ khởi động như Nand Flash, Nor Flash,
OneNAND và SD Card và như vậy. Nó chọn thiết bị khởi động và chế độ thông qua cấu
hình trạng thái chân khác nhau "khi hệ thống bắt đầu
Hình 1.9: Các chế độ của board
“OM0" là nguồn đồng hồ chip S3C6410 chọn tín hiệu. Nó chọn "XTIpll" , khi
"OM0" là "0", nó chọn "EXTCLK" khi "OM0" là "1" . Các IDEA6410 sử dụng "XTIpll".
"SELNAND" là một tín hiệu của việc lựa chọn loại bộ nhớ, đó là mức cao khi lựa
chọn NAND Flash , đó là mức thấp khi chọn OneNAND . Board S3C6410 sử dụng
NAND Flash .
EINT13 - EINT15 là thiết bị chọn chân của chế độ khởi động IROM, khi thông qua
chế độ khởi động IROM, các S3C6410 chip chính chạy chương trình giải quyết trước sau
đó đọc tình trạng ba chân EINT15 , EINT14 , EINT13 với cấu hình khác nhau để lựa
chọn thiết bị khởi động.
Đó là chế độ khởi động IROM khi người dùng chọn thẻ SD là thiết bị khởi động. Ở
chế độ này , EINT15 , EINT14 , EINT13 là mức thấp. Vì vậy, người dùng sẽ thấy trên
bảng S3C6410 , những tín hiệu EINT15 , EINT14 , EINT13 được trực tiếp kết nối với
mặt đất .
DBGSEL là JTAG giao diện cuộc gọi chọn tín hiệu.
Trên board S3C6410, ba chân EINT13 - 15 đã được đặt vào mức độ thấp , hãy chọn
chế độ khởi động bằng cách cấu hình OM1 - OM4 và SELNAND.
Ports
OM1 OM2 OM3 OM4
SW1’s Position 1
2
3
4
Nor Flash boot- 1
0
1
0
Nand Flash
1
1
0
0
XSELNAND
SD
boot-up
1
1
1
1
ON[4:1]
Hình 1.10: cấu hình SW1
Lưu EINT[15:13]
ý:
Boo-up
Device
a. "1" là SW1
ON, "0" là SW1 OFF,
"X" Note
là mức cao hay mức thấp.
b. Chế
1 độ khởi động mặc định của
IDEA6410
là NAND Flash.
0000
XXX
Nand Flash
512k page size, addressing cycle is 3
clock
1
Hình 1.11: SW1
OM0 là nguồn lựa chọn tín hiệu đồng hồ chip S3C6410. Nó chọn XTIpll khi OM0
là "0", nó lựa chọn EXTCLK khi OM0 là "1". Các IDEA6410 sử dụng XTIpll.
2.3.4. Mô tả thiết kế phần cứng và giao diện S3C6410
Nand Flash
Board S3C6410 lựa chonchọn SLC NAND Flash K9F2G08 từ Samsung, kích
thước của nó là Bytes 256M, chủ yếu để lưu trữ nhân, ứng dụng, hệ thống tập tin và dữ
liệu người dùng.
Ngoài ra, phần sơ đồ chân và chức năng tương thích với các thiết bị Nand Flash
được liệt kê ở trên cũng có thể được sử dụng với Board S3C6410.
Các thiết bị NAND Flash thường có tuổi thọ ít nhất 100.000 xóa/chu kỳ chương trình và
tỷ lệ lưu giữ dữ liệu của 10 năm.
NAND Flash là một thiết bị khởi động, khi khởi động, các chip chính S3C6410 tự
động sao chép 8K trong Nand Flash vào bộ nhớ đệm của chip để chạy. Sau khi cấu hình
khởi tạo, các chip nhảy tới địa chỉ bắt đầu của nhân để chạy các hệ điều hành. Hình ảnh
dưới đây cho thấy bản vẽ sơ đồ mạch của Nand Flash:
Hình 1.12: Sơ đồ mạch của Nand Flash.
DDR RAM
Board nhận 2 thanh DDR RAM Mobile Samsung K$X%!!63PC 64M Bytes với
tốc độ 266MHz. Đó là gói nhỏ để tiết kiệm diwwnj tích trên board, và cũng sử dụng
đường dây mạch trên khắp chiều dài machjPCB để đảm bảo việc board chạy ổn định và
đạt tốc độ cao.
NOR Flash
Board S3C6410 nhận Nor Flash ARM AM29LV160DB, chip S3C6410 hỗ trợ tối
đa 27 địa chỉ tín hiệu địa chỉ từ AA0-A26, trong đó A20-A26 được tái sử dụng với các tín
hiệu dữ liệu DDR D20-D26. Như Board S3C6410 gồm DDR RAM do đó chỉ có 19 dòng
A1-A19 cho NOR Flash để sử dụng. Nor Flash có phạm vi là 1MB. NOR Flash có thể
được cấu hình như một thiết bị khởi động, nó thông qua chế độ khởi động 16-bit SROM.
Hình ảnh dưới đây cho thấy bản vẽ sơ đồ mạch của NOR Flash:
Hình 1.13: Bản vẽ sơ đồ mạch của NOR Flash
Giao diện nối tiếp
Có bốn giao diện Serial, UART0, UART1 là 5 dòng, trong khi UART2, UART3 là
3 dòng.
Board sử dụng ba chip giao diện nối tiếp SP3232 để thay đổi 4 giao diện nối tiếp mức
RS232. Người dùng có thể sử dụng chuyển đổi SW2 để thay đổi đầu ra của giao diện nối
tiếp tới RS232 hoặc TTL. Có một phần của cổng DB9 tiêu chuẩn tại kết nối J4, mà đặc
biệt là thiết kế để gỡ lỗi và in thông điệp gỡ lỗi. Dưới đây hình ảnh cho thấy mạch của
UART0
Hình 1.14: Mạch của UART0
UART1, UART2 hoặc UART3 có thể được đặt là ngõ ra tới RS232 hoặc TTL bằng
cách điều chỉnh công tắc SW2. Tiêu đề pin J6, J7, J8 là tương ứng với UART1, UART2,
UART3 lựa chọn đầu ra RS232, pin tiêu đề J5 là đầu ra TTL cho UART1, UART2,
UART3. Hình ảnh dưới đây cho thấy những kết nối pin tiêu đề.
Hình 1.15: Kết nối UART
Dưới đây là hình ảnh các bản vẽ mạch của UART1, UART2 và UART3:
Hình 1.16: Bản vẽ mạch của UART1, UAR2, UART3
2.3.5. Giao diện
USB Host
Giao diện USB Host hỗ trợ USB 2.0 tốc độ đầy đủ và cổng của nó là loại A.
Cổng hỗ trợ U-Disk, bàn phím USB, USB Portal Disc, USB Mouse. Dưới đây là bản vẽ
mạch của USB Host.
Hình 1.17: Bản vẽ mạch của USB Host
USB OTG
Bộ điều khiển hỗ trợ tính năng On-The-Go (OTG). Universal Serial Bus OTG là
một thiết bị có khả năng bắt đầu phiên giao dịch, kiểm soát việc kết nối và trao đổi
Host/ngoại vi xen kẽ vai trò với nhau.
USB OTG hỗ trợ giao thức USB 2.0, nó hỗ trợ tốc độ cao(480Mbps), tốc độ Trung bình
(12Mbps), tốc độ thấp (1.5Mbps). Board S3C6410 mặc định chạy ở tốc độ cao và chế độ
slave thuận tiện cho việc kết nối với máy tính. Nó có thể sử dụng USB OTG để tải
chương trình hoặc ứng dụng khi người sử dụng đang phát triển ứng dụng. USB OTG loại
cổng là Mini A/B, hình ảnh dưới đây là bản vẽ mạch của nó.
Hình 1.18: Hình vẽ mạch của USB Slave
JTAG
Board S3C6410 được trang bị với một giao diện JTAG để tải về mã chương trình
vào flash bên ngoài, bên trong bộ điều khiển bộ nhớ RAM hoặc cho các chương trình
hiện đang thực hiện gỡ lỗi. Giao diện JTAG mở rộng ra 5*2
2.0mm đầu cắm J2. Thông qua cấu hình tín hiệu DBGSEL người sử dụng có thể chọn
hoạt động Flash ngoài hay bộ điều khiển bộ nhớ RAM nội bộ, dưới đây là cấu hình chi
tiết của tín hiệu DBGSEL.
- Khi DBGSEL được thiết lập ở mức cao, JTAG kết nối bộ điều khiển bộ nhớ
RAM nội bộ và có thể gọi vào địa chỉ của SRAM điều khiển nội bộ.
- Khi DBGSEL được thiết lập là cấp thấp, JTAG kết nối bộ nhớ flash bên ngoài
cho các chương trình gỡ lỗi.
Hình 1.19: Hình ảnh và bản vẽ mạch của kết nối JTAG
SD Card
Cổng thẻ SD J12 hỗ trợ giao thức bộ nhớ SD 2.0 và SDIO giao thức 1.0. Như SD
nó có thể hỗ trợ thẻ 8G SD,như SDIO nó có thể hỗ trợ WIFI, Module GPS.
Ngoài ra các thẻ SD có thể được dùng như là thiết bị khởi động cho sản xuất hàng
loạt và dễ dàng cập nhật phần mềm.
Hình ảnh dưới đây cho thấy bản vẽ mạch của thẻ SD.
Hình 1.19: Bản vẽ mạch của SD Card
2.3.6. Giao diện máy ảnh
Giao diện máy ảnh hỗ trợ chế độ 8 bit ITU-R BT 601/656 và độ phân giải lên đến
4096x4096 điểm ảnh. Giao diện máy ảnh là một kết nối pin loại 10*2 tại J10. Giao diện
không chỉ có tín hiệu máy ảnh dẫn ra từ CPU kiểm soát nhưng cũng đã được thêm vào tín
hiệu IIC và CAM_PD/GPP14 (GPIO). Thông thường các thiết bị máy ảnh được thiết lập
IIC, nhưng nhà sản xuất đã thêm CAM_PD/GPP14 để bảo vệ IIC không đụng độ với các
thiết bị bên ngoài khác, một khi trường hợp này xảy ra, CAM_PD/GPP14 (GPIO) có thể
thay thế IIC. Nhà sản xuất cũng thêm CAM_PD/GPP14 cho quản lý điện cho thiết bị máy
ảnh như tắt nguồn, quản lý tiết kiệm điện năng.
Embest phát triển một mô-đun máy ảnh có thể kết nối trực tiếp với Board, và độ
phân giải lên đến 1.3M pixel. Dưới đây là hình ảnh về giao diện máy ảnh:
Hình 1.21: Hình ảnh và bản vẽ mạch của giao diện máy ảnh
2.3.7. Màn hình TFT LCD và giao diện màn hình cảm ứng
Các gói phần mềm mặc định cho Board S3C6410 có chứa một phần của Module
màn hình LCD, Module được làm từ một phần của LCD 4.3inch TFT là Innolux
AT043TN24, một phần của màn hình cảm ứng và một phần của Board chuyển đổi. Các
mô-đun được kết nối với Board thông qua 41pin 0.5mm và cáp FPC tại kết nối J9. Các
kết nối bao gồm 2 GPIO và 1 PWM, Board S3C6410 sử dụng PWM để kiểm soát đen
nền, nhưng 2 GPIO không được sử dụng, người dùng có thể sử dụng 2 GPIO để thiết lập
lại, quản lý điện năng và nhiều chức năng khác. Dưới đây là hình ảnh về màn hình LCD
và kết nối TC.
Hình 1.22:Hình ảnh của màn hình LCD và kết nối TC
Hình 1.23: Bản vẽ mạch của màn hình LCD và kết nối TC
2.3.8. Phím reset
Board S3C6410 gồm chip reset MAX811T. Dưới đây là hình ảnh vẽ mạch Reset.
Hình 1.24: Hình ảnh và bản vẽ mạch của nút Reset
2.3.9. Giao diện âm thanh
Board S3C6410 thông qua bộ điều khiển nội bộ Bus AC97 để kết nối chip âm
thanh bên ngoài WM9714. Board có kết nối đường ra (J16), Line trong (J17) và MIC
trong (J15).
Dưới đây là hình ảnh về giao diện âm thanh.
Hình 1.25. Hình ảnh và bản vẽ mạch của các jack cắm âm thanh
2.3.10. Buzzer
Board S3C6410 có DC Buzzer. Nó sẽ sử dụng NPN DYNATRON SS8050 để
khuếch đại âm thanh cho buzzer. Buzzer được điều khiển bởi tín hiệu PWM1_GDF15.
Dưới đây là mạch vẽ về Buzzer:
Hình 1.26: Hình ảnh và bản vẽ của mạch Buzzer
2.3.11. Giao diện Ethernet 100M
Giao diện Ethernet được bổ sung vào Board của Ethernet Transformer và kết nối
RJ45. Bộ điều khiển Ethernet là chip DM900AE bên ngoài, chip gọi tới tín hiệu ngắt
ngoài CPU EINT7.
Về quá trình phát triển, giao diện có thể kết nối với máy tính thông qua đường dây
Ethernet chéo để tải về WinCE Image, nhân Linux và hệ thống tập tin. Dưới đây là bản
vẽ mạch về giao diện Ethernet.