Trang 2 / 3 FirstFirst 123 LastLast
Hiển thị kết quả từ 11 đến 20 / 28

Chủ đề: Embedded System

  1. #11
    Tham gia
    07-06-2006
    Bài viết
    3,587
    Like
    86
    Thanked 641 Times in 314 Posts
    Cám ơn zero2one chia xẻ vài thông tin về Embedded System. Những info bạn có được hoàn toàn chính xác.

    Lý do mình không thích coi Pocket PC Programming như 1 embedded system development lý do là vì bạn thân PPC được xem như 1 máy tính thu nhỏ. Nó không phải là 1 thiết bị điện tử độc lập. Và mình cũng không muốn những người dựa hoàn toàn trên nền của M$ nơi DOT NET FRAMEWORK được apply đến tận PDA. Và chỉ với vài dòng code C# mà không hiểu gì về hệ thống nó đã chạy ngon lành trên bất kỳ 1 cái PDA nào.

    Đặc trưng khó khăn nhất của 1 embedded system là nó mang rất nhiều đặc thù riêng của 1 hệ thống và khái niệm chuyển chương trình từ 1 hệ thống này sang 1 hệ thống khác đồng nghĩa với developer phải nắm vững cả 2 hệ thống. Bạn sẽ thấy khi mà trên PC nói chung ( include luôn MAC) với lèo tèo vài hệ điều hành như WINDOWS, UNIX ( gồm tất cả những họ đi theo), MAC là vô số những hệ điều hành khác nhau cho embedded system, mỗi hệ điều hành có 1 thế mạnh riêng cho từng hệ thống.

    Nếu bạn làm Embedded System, bạn sẽ rất bình thường khi phải tiếp xúc với 1 OS trời ơi và propietary hoàn toàn. Bạn không thể kiếm ra bất cứ 1 tài liệu nào về nó free trên web. Vài em ví dụ như: Creative sẽ sử dụng NUCLEUS, C Executive được gắn đa số trong những con ARM, pSOS cho những con MIPS .. ngoài ra còn có ECOS, VXWORKS hay 1 cái os trời đánh nào đó của 1 công ty mua rồi sửa theo ý của mình. Nếu cứ xài Windows Pocket PC rồi tự nhủ cả thế giới Embedded này có nhiêu đó thôi sao giống y như Windows mà thì )

    Nó tương tự với công việc 1 người ES hiện nay phải học OS, đọc WIN32 API rồi viết mọi thứ bằng C mà ko có bất cứ một lib support nào như MFC. So sánh với PPC Developer quá cao nơi có thể dùng Dot Net Framework hay lib hỗ trợ đầy đủ liệu có phải bất công quá không ?

  2. Thành viên Like bài viết này:


  3. #12
    Tham gia
    07-12-2004
    Bài viết
    189
    Like
    0
    Thanked 1 Time in 1 Post
    Anh lqkhoi nói hoàn toàn đúng về dev cho thiết bị WinCE trừ khi bạn viết ứng dụng truy cập phần cứng ở mức thấp, VD: viết chương trình điều khiển camera mà không thông qua các API của WinCE thay vào đó là điều khiển cam trực tiếp qua việc đọc ghi dữ liệu tại các chân GPIO của "CPU".
    Không biết có ai có hứng thú với việc implement USB Host controller driver cho Intel PXA272 không? Cụ thể là viết một kernel module cho nhân Linux 2.4.20 - đã applied mod hard realtime của Montavista cùng những thay đổi do Motorola thực hiện. Nói có vẻ phức tạp chứ thực ra đây là kết nối USB host controller có sẵn với cổng mini USB trên điện thoại Motorola e680 khiến cho điện thoại có thêm chức năng USB host.

  4. #13
    Tham gia
    12-11-2005
    Bài viết
    25
    Like
    0
    Thanked 0 Times in 0 Posts
    Vâng, quả là phát triển ứng dụng trên PDA không mang hoàn toàn những đặc thù về ES. Khi đề cập tới PDA, mình chỉ muốn đưa ra một ví dụ mới và khá gần gũi với mọi người mà thôi. Thực ra, PDA đâu chỉ có PPC họ nhà M$, mà còn có PALM sài PalmOS nữa. CT viết cho PPC không thể chạy được trên PALM. Đó là điểm nổi bật để có thể hiểu developing cho PDA cũng là một lĩnh vực nhỏ trong ES vậy.

    Quote Được gửi bởi lqkhoi
    Đặc trưng khó khăn nhất của 1 embedded system là nó mang rất nhiều đặc thù riêng của 1 hệ thống và khái niệm chuyển chương trình từ 1 hệ thống này sang 1 hệ thống khác đồng nghĩa với developer phải nắm vững cả 2 hệ thống. Bạn sẽ thấy khi mà trên PC nói chung ( include luôn MAC) với lèo tèo vài hệ điều hành như WINDOWS, UNIX ( gồm tất cả những họ đi theo), MAC là vô số những hệ điều hành khác nhau cho embedded system, mỗi hệ điều hành có 1 thế mạnh riêng cho từng hệ thống.

    Nếu bạn làm Embedded System, bạn sẽ rất bình thường khi phải tiếp xúc với 1 OS trời ơi và propietary hoàn toàn. Bạn không thể kiếm ra bất cứ 1 tài liệu nào về nó free trên web. Vài em ví dụ như: Creative sẽ sử dụng NUCLEUS, C Executive được gắn đa số trong những con ARM, pSOS cho những con MIPS .. ngoài ra còn có ECOS, VXWORKS hay 1 cái os trời đánh nào đó của 1 công ty mua rồi sửa theo ý của mình. Nếu cứ xài Windows Pocket PC rồi tự nhủ cả thế giới Embedded này có nhiêu đó thôi sao giống y như Windows mà thì )
    mình hoàn toàn đồng ý với bạn. Khi làm về ES, anh em thường sẽ phải có những hiểu biết nhất định về OS, interrupt,...quả thật cũng rất thú vị. Nhưng có một điểm đặc thù, công việc khá là tỉ mỉ và đòi hỏi kiên nhẫn rất nhiều.

  5. #14
    Tham gia
    01-06-2006
    Bài viết
    21
    Like
    0
    Thanked 0 Times in 0 Posts
    Có lẽ ES cũng tùy nơi tùy việc thôi. Thí dụ như chỗ tôi dùng VxWorks chạy trên PowerPC. Thường thì SW engineer không nhất thiết phải biết về RTOS. Lúc unit test thì compile C/C++ code để chạy trên Linux, Solaris, hoặc cả Windows. Những low-level interface thì đã có wrapper.

    Lúc tôi mới vô thì làm cả C và VHDL/Verilog. Lúc đó FPGA (VHDL/Verilog) mới chỉ được dùng thử trong prototype, nhưng bây giờ thì những system mới dùng cả PPC và FPGA, và ngay cả trong những FPGA chip cũng có embedded PPC. FPGA developer thì phải có chút ít kiến thức về điện tử, vì FPGA có lúc rất "chảnh". Power-supply không đủ current thì bị bit errors, thay inductor để nâng current lên, hơi cao một chút thì lại noisy, cũng bị bit errors.

    Nhưng nói chung làm về FPGA thú vị hơn vì phải tìm mọi cách tiết kiệm logic gate (size), tiết kiệm clock cycle và nâng cao clock rate (speed), và tiết kiệm logic transition (power). Thường thì bên embedded C cứ tà tà mà code, miễn chạy tốt thì thôi, hơi nhàn một chút.

  6. #15
    Tham gia
    22-03-2006
    Bài viết
    109
    Like
    1
    Thanked 0 Times in 0 Posts

    Kiến thức cần cho 1 Embedded System Programmer?

    Em rất quan tâm đến nghề Embedded System đang muốn tìm hiểu về nghề này.
    Cho hỏi học những môn như Kĩ thuật điện tử,Cấu trúc máy tính,Vi xử lý, ngôn ngữ C đã đủ kiến thức cơ bản để trở thành 1 Embedded System Programmer chưa?
    Một câu hỏi tế nhị:mức lương cho nghề này có cao không và cơ hội thăng tiến nhiều không?

  7. #16
    Tham gia
    07-06-2006
    Bài viết
    3,587
    Like
    86
    Thanked 641 Times in 314 Posts
    To abcslayer:
    Chúng ta đã tìm ra được 1 ES developer thực thụ rùi đó Mod HW là 1 thú vui rất hay đấy nhỉ. Chỉ có 1 số góp ý với bạn về USB Host, tôi không rành về cái điện thoại gì đó của Motorola cho lắm tuy nhiên nếu bạn đã make sure rằng con USB chip chạy trên đó là OTG ( On the Go == Host + Device) thì nó chắc có thể chạy được HOST. Tuy nhiên vấn đề lớn nhất khi bạn chuyển nó thành HOST là bạn phải chú ý đến power current của nó vì thông thường những con USB OTG nó cần phải có 1 nguồn riêng khi switch sang Host để cấp cho Device. Chứ không nó xách cái USB laptop HDD gắn vào thì lạng quạng lên đường em điện thoại của bạn đấy


    To nemesis21:
    Bạn làm việc ở VN hay ở nước ngoài thế ? Mình hỏi câu đó là vì lúc còn ở VN mình thấy rất ít công ty đụng đến FPGA. Bạn nói hoàn toàn chính xác theo thời gian FPGA được sử dụng rất nhiều trước khi đưa ra sản phẩm chính thức bởi vì dễ dàng lập trình hơn. Nó cũng biến những HW engineer thành những SW lập trình ) có khác là lập trình VHDL và MATLAB .

    FPGA càng ngày càng mạnh và bạn có thể làm rất nhiều chuyện trên đó. Tuy nhiên FPGA chỉ có thể trong môi trường thử nghiệm vì giá thành 1 con FPGA khá mắc nếu so với ASIC, kích thước cồng kềnh tiêu thụ điện dã man mà chạy thì chậm hơn nhiều.Những bus như vài chục Mb như ethernet hay trên nữa đối với những internal bus là FPGA ngọng. Nếu bạn làm trong semiconductor bạn sẽ thấy 1 cái board nhiều con FPGA to đùng khi xuống ASIC thành 1 con chip tí hon bé xíu . Khi đó 1 save nho nhỏ bạn nói tiết kiệm gate đem lại 1 khoảng lợi nhuận khổng lồ nếu sản xuất đến vài trăm ngàn con.

    Chính vì thế làm FPGA ở nước ngoài rất được trọng dụng, mà cũng rảnh lắm vì với những product lớn đôi khi lúc compile và map list 1 2 ngày để ra kết quả là chuyện thường hehehe, nên lúc đó bà con FPGA đi vòng vòng uống cafe
    Được sửa bởi lqkhoi lúc 20:08 ngày 09-08-2006

  8. #17
    Tham gia
    01-06-2006
    Bài viết
    21
    Like
    0
    Thanked 0 Times in 0 Posts
    Quote Được gửi bởi lqkhoi
    To nemesis21:
    Bạn làm việc ở VN hay ở nước ngoài thế ? Mình hỏi câu đó là vì lúc còn ở VN mình thấy rất ít công ty đụng đến FPGA. Bạn nói hoàn toàn chính xác theo thời gian FPGA được sử dụng rất nhiều trước khi đưa ra sản phẩm chính thức bởi vì dễ dàng lập trình hơn. Nó cũng biến những HW engineer thành những SW lập trình ) có khác là lập trình VHDL và MATLAB .

    FPGA càng ngày càng mạnh và bạn có thể làm rất nhiều chuyện trên đó. Tuy nhiên FPGA chỉ có thể trong môi trường thử nghiệm vì giá thành 1 con FPGA khá mắc nếu so với ASIC, kích thước cồng kềnh tiêu thụ điện dã man mà chạy thì chậm hơn nhiều.Những bus như vài chục Mb như ethernet hay trên nữa đối với những internal bus là FPGA ngọng. Nếu bạn làm trong semiconductor bạn sẽ thấy 1 cái board nhiều con FPGA to đùng khi xuống ASIC thành 1 con chip tí hon bé xíu . Khi đó 1 save nho nhỏ bạn nói tiết kiệm gate đem lại 1 khoảng lợi nhuận khổng lồ nếu sản xuất đến vài trăm ngàn con.

    Chính vì thế làm FPGA ở nước ngoài rất được trọng dụng, mà cũng rảnh lắm vì với những product lớn đôi khi lúc compile và map list 1 2 ngày để ra kết quả là chuyện thường hehehe, nên lúc đó bà con FPGA đi vòng vòng uống cafe

    Vâng mình làm việc ở nước ngoài. Làm DSP/communication thì không đủ số lượng để làm ASIC. FPGA được dùng trong production system như "software replacement" ... những DSP algorithms lúc trước làm trên software thì bây giờ chuyển sang FPGA, và FPGA mạnh hơn embedded software rất rất nhiều lần. Data bandwidth cũng không chậm lắm đâu bạn, RACEway sắp được cho về vườn cũng lên được 200 MB/s per channel. Một lợi thế của FPGA so với ASIC là bạn có thể dễ dàng làm bug fix hoặc feature upgrade.

    Bây giờ thì mình không dùng Matlab nửa, mà chuyển sang dùng Python. Python thì more objected-oriented, thuận lợi hơn cho hardware/algorithm modeling, và Python cũng có thể interface với FPGA.

    Có lẽ đi uống cafe là đúng đó bạn Thường compile lâu như thế là vào lúc integration & testing, sắp đến hạn giao hàng, lúc đó boss của boss ở phòng kế bên sang hỏi status vài lần mỗi ngày thì cũng nên ráng uống cafe cho nhiều vào để tỉnh táo mà làm thêm Mà software ở đây compile 1 2 ngày cũng không hiếm.



    Bạn nói HW engineer làm SW có thể chưa đúng lắm. Ở giữa HW engineer và SW engineer còn system engineer. Với project nhỏ thì một system engineer phải làm từ hardware design (chọn system platform, FPGA board, antenna, ...), algorithm design, làm VHDL code, test, vv ... một anh VN khác ở đây cũng vừa làm xong cái project đó.

  9. #18
    Tham gia
    07-06-2006
    Bài viết
    3,587
    Like
    86
    Thanked 641 Times in 314 Posts
    Hi nemesis21,
    Rất vui có thêm 1 bạn đồng nghiệp . Tôi bây giờ cũng ít làm đến ES mà bắt đầu xuống phần của bạn nhiều hơn.Công việc chính của tôi là support customer nên cái gì tôi cũng xía vào đó nhưng đủ đễ nổ với customer hơn là làm việc chính thức . Tôi làm bên semiconductor, chuyên làm chip nên có thể point of view của tôi khác bạn xíu, vì bọn tôi bán cho customer cuối cùng là chip nên tất nhiên FPGA đối với bọn tôi chỉ là test để có thể ra ASIC mà thôi. Một con chip bán có trên 10 đồng mà gắn em FPGA vô chắc chết quá.
    Vấn đề tôi nói về speed của FPGA là vì trước khi ra ASIC bao giờ khi làm FPGA, mọi demo cho customer đều kèm theo 1 câu : sẽ không đạt được speed trong FRS (Function requirement spec )

    Mình ngày xưa cũng rất thường xài Python, nhưng cho mình hỏi 1 tí. Đối với mình ngày xưa Python chỉ là 1 ngôn ngữ và vì nó đơn giản và text parsing khá tốt nên mình dùng nó để viết những cái auto test hoặc là simple control. Còn Matlab thì lại được apply riêng cho DSP, như vậy nếu bạn dùng Python có nghĩa là đi kèm theo Python đó là 1 tập hợp library đủ mạnh để đủ sức thay thế MATLAB ??? Còn python chỉ đơn giản là làm script để run những hàm trong library đó thôi ??

    Cuối cùng rất mừng khi kiếm thêm 1 người làm mấy cái này,bạn có nhã hứng quay lại VN làm cái gì đó liên quan đến cái này không ? Rảnh thì nói riêng với mình chơi. Mail mình là lqkhoi@gmail.com

  10. #19
    Tham gia
    12-11-2005
    Bài viết
    25
    Like
    0
    Thanked 0 Times in 0 Posts
    Mãi rồi các cao thủ cũng lộ diện
    các bác cứ trao đổi, cho anh em được mở rộng tầm hiểu biết. Xưa nay chỉ biết đến mấy con VDK, VXL 8bit thôi, có học qua VHDL ở đại học nhưng chẳng dùng làm gì
    Xem các bác nói chuyện cũng biết thêm nhiều điều, thật là quý.

  11. #20
    Tham gia
    07-12-2004
    Bài viết
    189
    Like
    0
    Thanked 1 Time in 1 Post
    Hì hì, cảm ơn anh lqkhoi đã nhắc nhở, cái "CPU" PXA27x dùng 3.3V còn USB chơi 5V tuy nhiên tụi Moto dùng external tranceiver nên vụ này được giải quyết rồi. Giờ chỉ ghi vào register dúng cấu hình mình cần để USB Host kết nối được ra ngoài + viết thêm code theo chuẩn USB(enum device, reset bus,...)

Trang 2 / 3 FirstFirst 123 LastLast

Bookmarks

Quy định

  • Bạn không thể tạo chủ đề mới
  • Bạn không thể trả lời bài viết
  • Bạn không thể gửi file đính kèm
  • Bạn không thể sửa bài viết của mình
  •