có thể nói xilinx ISE ,EDK(plaform studio),DSP va plan ahead của xilinx là bộ công cụ rất mạnh để chúng ta có thể xây dựng nên các thiết kế nhúng và thử nghiêm các thành quả của chúng ta .
Bạn đã làm quen với hệ thống nhúng (embedded system) bắt đầu từ các họ Vi điều khiển 8051 rồi đến PIC, AVR và cao hơn nữa là họ ARM, AVR32 hay pSoC. Rồi bạn tìm hiểu FPGA với một cách tiếp cận hoàn toàn khác. Vậy bao nhiêu công sức, kinh nghiệm về vi điều khiển và cả những công trình nghiên cứu của bạn bị xếp xó ? Bạn không phải lo lắng, thực ra FPGA chỉ phát huy sức mạnh của nó khi được ghép nối với vi điều khiển. Đó cũng chính là mục đích và tư tưởng thiết kế của co-design.
Co-design kết hợp năng lực về phần cứng của FPGA với ưu thế xử lý phần mềm của Vi điều khiển để tạo nên một hệ thống đầy sức mạnh. Ví dụ bạn muốn thiết kế một ứng dụng đo nhiệt độ phòng với cảm biến nhiệt có giao tiếp I2C. Nếu bạn chỉ dùng MCU thông thường không có giao tiếp I2C thì sẽ gặp rất nhiều khó khăn (Phải lập trình ngắt, bắt sườn, mức của xung,...). Còn nếu bạn chỉ sử dụng FPGA trong ứng dụng này cũng không ổn vì lúc đó bạn sẽ gặp khó khăn nhất định trong các tính toán số học. Ví dụ cảm biến đo nhiệt độ bằng đơn vị độ F, trong khi bạn muốn hiển thị độ C, mà muốn thực hiện các phép toán cộng trừ nhân chia để chuyển đổi độ F với độ C bằng FPGA là không hề đơn giản. Trong trường hợp này ta thiết kế theo phương thức co-design. FPGA phụ trách giao tiếp với cảm biến I2C và trả về các số liệu thô để MCU thực hiện các tính toán số học.
Đến đây không ít người băn khoăn, tại sao không lấy một MCU có sẵn giao tiếp I2C hoặc nối một controlller I2C với MCU? Câu trả lời là nếu sau này bạn tìm thấy một cảm biến khác tốt hơn, chính xác hơn nhưng lại là giao tiếp SPI hoặc CAN, lúc đó bạn phải bỏ nhiều công sức vào đó để thay đổi thiết kế(thay một MCU khác có SPI, CAN hoặc thay controller khác) trong khi nếu sử dụng khả năng tuỳ biến phần cứng của FPGA, bạn có thể cấu hình lại giao thức I2C thành SPI hay CAN,... Tuyệt vời hơn nữa là bạn có thể lưu cấu hình của FPGA trong thẻ nhớ ngoài (MMC, compact flash) và MCU sẽ cấu hình lại FPGA ngay trong quá trình hoạt động mà bạn không cần phải nạp lại chương trình. Thậm chí nhiều FPGA còn có đặt tính cấu hình lại một phần của FPGA trong khi các phần khác vẫn hoạt động mà không cần phải reset lại FPGA.
Trong thực tế, bạn có thể ghép nối FPGA với MCU ngoài bằng các chân giao tiếp thông thường. Một cách khác là sử dụng MCU nhúng có sẵn trong FPGA một hoặc nhiều MCU cứng hoặc mềm). Với Altera là Nios, Nios II (MCU mềm) hay Excalibur (MCU cứng với lõi ARM922T). Còn trong các FPGA của Xilinx là Picoblaze, Microblaze (MCU mềm) hay PowerPC (cứng). MCU cứng được thiết kế cứng sẵn trong FPGA, còn MCU mềm thực chất là một IP thường bằng VHDL và công cụ thiết kế sẽ triển khai IP đó xuống FPGA. Chính vì vậy MCU mềm sẽ tiêu tốn một phần tài nguyên của FPGA, nhưng bù lại nó có thể được cập nhật, thay đổi tuỳ biến theo các phiên bản khác nhau.
Bạn yên tâm là các lõi MCU Nios hay Microblaze, PowerPC khá thông dụng nên bạn có thể tìm thấy các hỗ trợ khá dễ dàng, chẳng hạn bạn muốn nhét một lõi RTOS vào trong một core MCU Nios II hoặc Microblaze thì bạn có thể dễ dàng tìm thấy port cho các MCU này.
và tất cả bộ công cụ của xilinx sẽ giúp chúng ta lam điều này .trong vi xử lí nhúng củe xilinx tích hợp bộ vi xử lí Power PC 405 , 440 củ IBM _nên so vơi nios của altera thì nó mạnh hơn nhiều
link download trực tiếp(5,6 GB)từ nhà sản xuất (đây là ban mới nhát hiện tại)
tại đây:
bạn không thẻ dùng đươc trình tăng tốc tải file mà hãy dán nó vào google crome rồi tải
còn cách để từ eval 30 ngày sang full ,tại đây
trong đó đã có hướng dẫn tiếng việt 100% do tôi viết ra sau khi tôi cài thành công ,và đã sử dụng được hơn 1 tháng
hoặc bạn có thể đăng kí một tài khoản free rồi tải(5,6 GB)
Bạn đã làm quen với hệ thống nhúng (embedded system) bắt đầu từ các họ Vi điều khiển 8051 rồi đến PIC, AVR và cao hơn nữa là họ ARM, AVR32 hay pSoC. Rồi bạn tìm hiểu FPGA với một cách tiếp cận hoàn toàn khác. Vậy bao nhiêu công sức, kinh nghiệm về vi điều khiển và cả những công trình nghiên cứu của bạn bị xếp xó ? Bạn không phải lo lắng, thực ra FPGA chỉ phát huy sức mạnh của nó khi được ghép nối với vi điều khiển. Đó cũng chính là mục đích và tư tưởng thiết kế của co-design.
Co-design kết hợp năng lực về phần cứng của FPGA với ưu thế xử lý phần mềm của Vi điều khiển để tạo nên một hệ thống đầy sức mạnh. Ví dụ bạn muốn thiết kế một ứng dụng đo nhiệt độ phòng với cảm biến nhiệt có giao tiếp I2C. Nếu bạn chỉ dùng MCU thông thường không có giao tiếp I2C thì sẽ gặp rất nhiều khó khăn (Phải lập trình ngắt, bắt sườn, mức của xung,...). Còn nếu bạn chỉ sử dụng FPGA trong ứng dụng này cũng không ổn vì lúc đó bạn sẽ gặp khó khăn nhất định trong các tính toán số học. Ví dụ cảm biến đo nhiệt độ bằng đơn vị độ F, trong khi bạn muốn hiển thị độ C, mà muốn thực hiện các phép toán cộng trừ nhân chia để chuyển đổi độ F với độ C bằng FPGA là không hề đơn giản. Trong trường hợp này ta thiết kế theo phương thức co-design. FPGA phụ trách giao tiếp với cảm biến I2C và trả về các số liệu thô để MCU thực hiện các tính toán số học.
Đến đây không ít người băn khoăn, tại sao không lấy một MCU có sẵn giao tiếp I2C hoặc nối một controlller I2C với MCU? Câu trả lời là nếu sau này bạn tìm thấy một cảm biến khác tốt hơn, chính xác hơn nhưng lại là giao tiếp SPI hoặc CAN, lúc đó bạn phải bỏ nhiều công sức vào đó để thay đổi thiết kế(thay một MCU khác có SPI, CAN hoặc thay controller khác) trong khi nếu sử dụng khả năng tuỳ biến phần cứng của FPGA, bạn có thể cấu hình lại giao thức I2C thành SPI hay CAN,... Tuyệt vời hơn nữa là bạn có thể lưu cấu hình của FPGA trong thẻ nhớ ngoài (MMC, compact flash) và MCU sẽ cấu hình lại FPGA ngay trong quá trình hoạt động mà bạn không cần phải nạp lại chương trình. Thậm chí nhiều FPGA còn có đặt tính cấu hình lại một phần của FPGA trong khi các phần khác vẫn hoạt động mà không cần phải reset lại FPGA.
Trong thực tế, bạn có thể ghép nối FPGA với MCU ngoài bằng các chân giao tiếp thông thường. Một cách khác là sử dụng MCU nhúng có sẵn trong FPGA một hoặc nhiều MCU cứng hoặc mềm). Với Altera là Nios, Nios II (MCU mềm) hay Excalibur (MCU cứng với lõi ARM922T). Còn trong các FPGA của Xilinx là Picoblaze, Microblaze (MCU mềm) hay PowerPC (cứng). MCU cứng được thiết kế cứng sẵn trong FPGA, còn MCU mềm thực chất là một IP thường bằng VHDL và công cụ thiết kế sẽ triển khai IP đó xuống FPGA. Chính vì vậy MCU mềm sẽ tiêu tốn một phần tài nguyên của FPGA, nhưng bù lại nó có thể được cập nhật, thay đổi tuỳ biến theo các phiên bản khác nhau.
Bạn yên tâm là các lõi MCU Nios hay Microblaze, PowerPC khá thông dụng nên bạn có thể tìm thấy các hỗ trợ khá dễ dàng, chẳng hạn bạn muốn nhét một lõi RTOS vào trong một core MCU Nios II hoặc Microblaze thì bạn có thể dễ dàng tìm thấy port cho các MCU này.
và tất cả bộ công cụ của xilinx sẽ giúp chúng ta lam điều này .trong vi xử lí nhúng củe xilinx tích hợp bộ vi xử lí Power PC 405 , 440 củ IBM _nên so vơi nios của altera thì nó mạnh hơn nhiều
link download trực tiếp(5,6 GB)từ nhà sản xuất (đây là ban mới nhát hiện tại)
tại đây:
bạn không thẻ dùng đươc trình tăng tốc tải file mà hãy dán nó vào google crome rồi tải
còn cách để từ eval 30 ngày sang full ,tại đây
trong đó đã có hướng dẫn tiếng việt 100% do tôi viết ra sau khi tôi cài thành công ,và đã sử dụng được hơn 1 tháng
hoặc bạn có thể đăng kí một tài khoản free rồi tải(5,6 GB)
Comment