1. 임베디드 시스템의 개념
임베디드 개념 이해에 집중
주로 세 가지 측면에서 이해한다.
1. 하드웨어의 경우 CPU 기반 주변 장치를 CPU 칩에 통합합니다.예를 들어, 초기 X86 아키텍처 기반 컴퓨터에서 CPU는 산술 유닛과 플러그인의 기능만 있었고 모든 칩은 외부 브리지를 구축하여 확장해야했습니다.구현, 직렬 등은 모두 외부 16C550/2 직렬 컨트롤러 칩에 의해 구현된다. 현재의 직렬 컨트롤러 칩은 이미 CPU에 통합되어 있다. PC기는 모두 그래픽 카드가 있다. 대부분의 임베디드 프로세서는 LCD 컨트롤러가 있다. 그러나 어떤 의미에서는 그래픽 카드에 해당한다.상대적으로 고급형 ARM Intel Xscale 아키텍처의 IXP 네트워크 프로세서 CPU는 PCI 컨트롤러를 통합합니다 (4개의 PCI 슬레이브 장치를 지원하거나 CPI 슬레이브 장치를 지원하도록 구성할 수 있음).또한 3개의 NPE 네트워크 프로세서 엔진이 통합되어 있으며, 이 중 2개는 게이트웨이 스위칭을 위한 2개의 MAC 주소에 해당하며, 다른 네트워크 프로세서 엔진은 DSL을 지원합니다.외부에 PHY 칩을 추가하기만 하면 DSL 인터넷 접속이 가능하다.IXP 시리즈는 최대 1.8G의 주파수를 제공하며 2G 메모리, 1G * 10 또는 10G * 1 이더넷 포트 또는 Febre 채널 광 채널을 지원합니다.IXP 시리즈는 인텔이 ARM 시스템 구조에서 통합한 후 Xscale의 핵심이 되기 위한 최고 프로세서여야 한다.
2. 소프트웨어부터 시작하여 사용자 정의 운영 체제 커널에서 응용 프로그램을 선택하고 컴파일 후 커널을 ROM으로 다운로드합니다.운영 체제 커널을 사용자 정의할 때 선택한 응용 프로그램 구성 요소는 소프트웨어의 "포함" 을 완료하기 위한 것입니다.예를 들어, WinCE는 커널을 사용자 정의할 때 wordpad, PDF, MediaPlay 등을 포함하여 해당 옵션을 제공합니다. 만약 우리가 선택한다면, CE가 시작되면 인터페이스에서 이러한 것들을 찾을 수 있습니다.이전 컴퓨터의 윈도우 운영 체제라면 대부분의 물건을 다시 설치해야합니다.
3. 소프트웨어 커널이나 응용 파일 시스템을 임베디드 시스템 하드웨어 플랫폼의 ROM에 구워 진정한"임베디드"를 실현한다.
위의 정의는 6, 7년 전 임베디드 시스템에서 중점적으로 이해한 정의입니다.책에는 많은 정의가 있지만, 이 분야에서 감히 그들의 정의가 매우 정확하다고 말할 수 있는 사람은 없다.예, 전문가와 학자들을 포함해서, 결국 임베디드 시스템은 컴퓨터 분야의 종합적인 학과입니다
2.내장형 시스템의 계층화 및 전문화 분류.
내장형 시스템은 하드웨어 계층, 구동 계층, 운영 체제 계층 및 어플리케이션 계층의 4 계층으로 구성됩니다.
1.하드웨어 계층은 전체 임베디드 시스템의 기초입니다.마이크로컨트롤러와 인터페이스에 익숙하고 C와 어셈블리 언어로 프로그래밍할 수 있다면 임베디드 시스템의 하드웨어 계층에서 나오는 것이 상대적으로 쉽고 하드웨어 계층도 드라이버이다.이 계층을 기반으로 우수한 드라이버 엔지니어는 하드웨어의 회로도를 이해하고 CPLD의 논리적 설계를 스스로 완료 할 수 있어야합니다.이와 동시에 그는 반드시 운영체제의 커널과 그 배치를 아주 잘 알아야 한다.그러나 하드웨어 플랫폼은 기본이고 부가가치는 소프트웨어에 달려 있다.
하드웨어 계층은 전자, 통신, 자동화, 전기 기계 통합 및 정보 공학 전문가에게 적합합니다.습득해야 할 전문 기초 지식은 단편기 원리와 인터페이스 기술, 마이크로컴퓨터 원리와 인터페이스 공정, C 언어를 포함한다.
2. 레이어를 제어합니다.이 부분은 비교적 어렵다.드라이버 엔지니어는 회로도를 이해할 수 있어야 할 뿐만 아니라 운영 체제 커널에 매우 정통해야 하며, 이렇게 하면 그들이 작성한 드라이버가 시스템을 호출할 때 운영 체제의 타임슬라이스를 독점하지 않는다.따라서 다른 작업은 수행할 수 없으며 운영 체제의 커널 아키텍처와 실시간 스케줄링을 이해하지 못하고 드라이버 제작 스타일도 좋지 않습니다.대부분의 책에서 언급 된 드라이버를 추가하는 방법에 따르면 많은 사람들이 할 수 있지만 그들은 심지어 기본 드라이버 엔지니어의 수준이 그 수준에 미치지 못할 수도 있습니다. 그래서 응용 프로그램을 호출할 때 작성된 드라이버는 우리가 프로그램을 열고 windows에서 실행하는 것과 같습니다.프로그램을 열면 이전 프로그램이 중단되거나 기다립니다.나중에 열리는 프로그램을 실행하는 데 시간이 걸립니다.좋은 운전사가 되고 싶다면 3, 4년의 지식이 없다.운영체제의 커널을 연구하지 않으면 성공하기가 쉽지 않지만 4층 임베디드 시스템 중 급여가 가장 높다.
드라이버 계층은 전자, 통신, 자동화, 전기 기계 통합 및 정보 공학 전문가, 특히 컴퓨터 편향 아키텍처에 더 적합합니다.하드웨어 계층의 기본 학문 외에도 데이터 구조, 알고리즘 및 작업이 필요합니다.시스템 원리와 컴파일 원리는 반드시 매우 정통해야 한다.
3. 운영 체제 계층.운영 체제 계층의 경우, 현재 단순한 이식일 수도 있지만, 이미 작성된 운영 체제나 손발이 부족한 운영 체제에서 온 사람은 거의 없다.이 부분의 작업은 주로 운전사 엔지니어가 완성한다.완료.운영 체제는 시스템 작업 디버깅, 디스크 및 파일 관리를 담당하며 임베디드 시스템의 실시간성이 매우 중요합니다.마이크로소프트는 2년 동안 300명을 투자해 XP 운영체제를 개발했다고 한다.총 시간은 600명 년이다.중국 과학원 소프트웨어 연구소의 Nuwa Hopen 운영 체제는 완료하기까지 수백 명이 걸릴 것으로 추산됩니다.그러므로 이 부분의 사업은 상대적으로 무의미하다.
4. 레이어를 적용하기가 상대적으로 쉽습니다.만약 당신이 윈도우즈에서 프로그래밍 인터페이스 함수를 호출하는 방법을 알고 있다면, 그것은 운영체제의 컴파일과 개발 환경만 바꿀 것이다.Java 프로그래밍과 관련된 경우에도 마찬가지입니다.임베디드 시스템에 관련된 알고리즘은 전문 알고리즘 담당자가 처리하며 임베디드 시스템 범주에 속할 필요가 없습니다.그러나 임베디드 시스템 아래의 임베디드 데이터베이스, 임베디드 시스템 기반 네트워크 프로그래밍, SIP, H.323, Astrisk와 같은 특정 응용 프로그램 수준 기반 프로토콜 응용 프로그램 개발과 관련되면 더욱 복잡하고 어렵습니다.
3. 목표와 포지셔닝.
먼저 목표가 하나 있고, 그 다음에 그것을 찾아라.
ARM을 배우는 것은 하드웨어 방면에서 한편으로는 인터페이스 회로 설계를 배우는 것이고, 다른 한편으로는 C 언어로 어셈블리와 판급 프로그래밍을 배우는 것이다.소프트웨어 관점에서 볼 때, ARM 프로세서 기반 운영 체제 수준의 드라이버와 마이그레이션을 배울 필요가 있습니다.이러한 것들은 초보자에게는 하드웨어에서 배우든 운영 체제에 대한 친숙함에서 응용 프로그램에 이르든, 당신이 무엇을 배우든, 순수한 운영 체제 급이나 더 높은 API 기반 응용 계층 프로그래밍이 아니라면, 하드웨어는 여전히 등록된 것을 충분히 이해할 수 있어야 한다는 것을 잘 알고 있을 것이다.또한 보드 레벨 조립과 C 프로그래밍을 이해할 수 있어야 합니다.따라서 임베디드 시스템의 하드웨어 레이어와 드라이버의 경우 ARM 인터페이스 회로 설계, ARM의 C 언어 및 어셈블리 언어 프로그래밍 디버깅 개발 환경을 여전히 파악해야 한다.
그러므로 초보자들은 반드시 방향을 장악하고 그들의 목표가 무엇이며 그 수준에 도달해야 한다.그런 다음 더 좋은, 더 실용적인 두 가지 계층의 ARM 관련 임베디드 시스템, 하드웨어 계층 및 구동 계층을 배우기 시작하면 어느 계층이 잘 학습되든 전망이 밝을 것입니다.
임베디드 시스템의 애플리케이션 측면에서 출발하려면 ARM 및 기타 시스템에서 멀리 떨어져 있을 수 있습니다.내장형 운영 체제의 환경 응용 프로그램과 WinCe 운영 체제의 EVC 응용 프로그램 개발 (windows의 VC와 유사) 과 같은 개발 도구 체인에 주목할 필요가 있습니다. 돌파하려면 오디오 및 비디오 프로토콜에 의존하십시오.예를 들어 VOIP 분야에서 SIP 또는 H.323 프로토콜 기반의 응용 계층 개발 또는 내장형 네트워크 데이터베이스 기반 개발 등이다.
초보자에게 우리는 할 수 있는 모든 것을 해야 한다.운전기사의 월급이 높다고 생각하지 말고 한 방향으로 삼아라.우리는 반드시 우리 자신의 특징을 결합시켜야 한다.임베디드 시스템의 네 가지 계층에 대해 말하자면, 각 계층에는 전문가가 있다.물론 전문가도 있다.높은 연봉에 상응하여 나는 하드웨어층에서 일한다.과거에 나는 매달 월급에서 3000위안에 가까운 개인 소득세를 공제해야 했다.물론 나는 한편으로는 엔지니어의 역할을 하고, 다른 한편으로는 주관자와 개인의 역할을 한다.나 혼자 이 직위를 하고 있지만, 그 업무 시간밖에 없다.하드웨어 방면에서 나와 경쟁하는 사람이 거의 없을 것이다. 이것은 나로 하여금 이렇게 많은 월급을 받을 수 있게 한다.
4. 시스템 선택을 개발한다.
많은 ARM 초보자들은 자신이 사용할 수 있는 시스템을 갖기를 원하지만, 많은 사람들이 ARM9와 ARM7이 더 좋다고 생각하는 것처럼 프로세서 버전이 높을수록 성능이 더 좋다는 오해를 가질 수 있다. 초보자들에게는 이 방면에서 현명해야 한다고 생각한다.개발 시스템의 선택은 임베디드 시스템의 방향, 드라이버 개발 또는 응용 프로그램, 임베디드 시스템 하드웨어 계층 설계 및 보드 레벨 테스트에 달려 있습니다.만약 당신이 운영체제 차원이나 응용 프로그램 차원에서, 드라이버든 응용 프로그램이든, 물론 프로세서 성능이 높을수록 좋지만, 이 물건의 자체 학습은 매우 어렵다. 몇 달, 반년 또는 1년의 시간이 아니다.2년 안에 할 수 있는 일.
어떤 의미에서 ARM7과 9의 차이점은 일부 기능 명령 세트가 풍부해지고 286과 386과 같은 기본 주파수가 증가했다는 것입니다.사용자에게는 아무것도 모를 수도 있지만 속도가 좀 빠르다는 것을 느낄 수밖에 없다.
ARM7은 ARM7 시리즈 프로세서의 내부 MMU가 적고 상대적으로 쉽게 제어할 수 있기 때문에 하드웨어 측면에서 출발하려는 사람들에게 더 적합합니다.예를 들어, S3C44B0의 경우 Cache를 쉽게 닫을 수 있으며 내부 인터페이스 레지스터가 매우 많습니다. 다양한 인터페이스는 하드웨어 프로그램 제어 또는 AXD 단일 단계 명령줄 명령을 통해 제어할 수 있다는 것을 쉽게 보고 이해할 수 있습니다.51 단편기의 사상에 근거하여, 그것은 쉽게 이해할 수 있으며, 32비트 단편기로 볼 수 있으며, 따라서 많은 51 엔지니어를 도태시켰다.임베디드 시스템 하드웨어 ARM 개발 엔지니어의 곤혹스러움으로 관심을 돌리려면 임베디드를 제대로 이해하지 못하는 업계의 일부 회사들이 운영 체제 차원으로 이끌려 두려움을 느끼게 하고 업계에서 이 방면에 인재가 더욱 부족하게 하지 말아야 한다.
내장형 시스템은 하드웨어 설계와 소프트웨어 구동 방면에서 모두 인터페이스를 매우 중시한다.플랫폼을 선택할 때 프로세서의 외부 자원도 확인해야 합니다.당신이 접촉하는 외부 자원이 많을수록 그것들에 대해 더 익숙해지고, 그렇다면 미래의 성공적인 취업 기회가 결정될 것이다.높을수록 높아지는 것이 바로 채용할 때 가리키는"관련 기능"이다. 왜냐하면 한 사람이 짧디짧은 몇년내에 모든 프로세서를 접촉할수 없고 채용단위에서 사용하는 프로세서는 우리에게 완전히 생소할수 있기때문이다. 지난날 대만의 수십개 작은 회사가 생산한 ARM 프로세서(시가 수천만원)도 아주 유용했다.그러나 이런 물건들은 너무 통용되여 이런 프로세서를 사용하는 회사는 인재를 모집할수 밖에 없다.관련 업무 경험이 있는 사람, 관련 업무 경험이란 무엇입니까?하드웨어 측면에서는 주변 인터페이스 설계에 관한 것이고, 소프트웨어 측면에서는 운영 체제의 인터페이스 드라이버 및 어플리케이션 개발 경험과 관련이 있습니다.나는 이 업종에 종사한 지 이미 거의 10년이 되었다.ARM은 2000년에 등장했다.나는 하루 만에 ARM7을 연구하기 시작했고 Xscale (이 보드는 ARM10-11 사이) 으로 직접 갔다.나는 5년 동안 면접에 참가하기 위해 수백 명 이상을 모집했다.사람들은 이런 방면에 대해 여전히 깊은 이해를 가지고 있다.
저는 개인적으로 삼성의 S3C44b0이 초보자에게 더 적합하다고 생각합니다.왜 그런 말을 해?인터페이스 자원이 비교적 풍부하고 기술이 비교적 성숙하며 재료가 비교적 많기 때문에 초보자에게 매우 적합할 것이다.문제가 있으면 대부분의 사람들이 51형 마이크로컨트롤러처럼 N비트 이상을 가지고 있기 때문에 돕고 해결할 사람을 쉽게 찾을 수 있습니다.전문가 수준의 숫자를 통해 문제를 신속하게 해결할 수 있습니다.그러나 업계에서는 이 ARM이 사용하기에 적합하지 않다고 보고 있지만 초보자에게는 좋은 일이다.
따라서 개발 시스템의 선택은 개인의 미래 목표, 개발 보드 인터페이스 자원과 업계의 다기능성에 달려 있다.
5. 교육에 대한 접근법.
나 자신에 대해 먼저 이야기합시다.나는 최근 10년 동안 종사하면서 국내 임베디드 시스템 업계와 함께 출발했다.나는 줄곧 내장형 시스템 업계의 최첨단에 처해 있다.나는 많은 고급 내장형 시스템 플랫폼 제품을 설계했고 많은 회사에 솔루션을 제공했다.이직하기 전에 그는 VOIP에 종사하는 미국 투자 회사를 위해 IP-PBX를 설계했다.일찍이 프로젝트 매니저, 프로젝트 주관, 기술 책임자, 부서 매니저를 지냈다.그는 많은 인맥을 쌓았고, 여러 해 동안의 경험을 쌓았다.학생들의 취업과 회사의 초빙이 일치하지 않는 것을 고려하여 회사는 인재를 초빙하려고 하지만, 학생과 갓 졸업한 엔지니어가 일자리를 찾는 것은 쉽지 않기 때문에 나는 지천성과학기술유한회사를 설립하여 임베디드 시스템 교육과 훈련을 진행하려고 시도하였다.
일선 과학연구인원과 일선 교사의 연계가 부족하기 때문에 국내 임베디드 인재가 부족하다.외국 대학의 기술은 업계 회사보다 앞서지만, 국내의 경우 업계 회사의 임베디드 시스템 기술이 대학보다 훨씬 앞선다.업계와 대학 사이의 다리를 구축하고 대학생들에게 선진적인 기능을 가져다주며 학생들이 취업경쟁에서 비장의 카드를 창조하고 업종공정사들에게 재빨리 제고하고 자아창조를 실현할수 있는 기회를 마련해주기 위하여 나는 년봉 20여만명의 외국기업에서 사직하고 임베디드식시스템훈련을 하였다.
훈련에는 시간을 벌기 위해 돈을 쓰는 것이다.많은 엔지니어들은 스스로 공부하기를 좋아하며 교육이 가치가 없다고 생각합니다. 그럴 수도 있습니다.물론 순전히 돈을 위해 훈련하는 것은 그다지 가치가 없지만, 그들은 이미 많은 돈을 잃었을 것이다.그들이 계산을 했는지 모르겠어요. 만약 일주일간의 훈련이 그들에게 2년 동안 독학으로 습득할 수 있는 지식을 가져다 줄 수 있다면, 그들은 훈련이 끝난 후 3개월에서 6개월의 시간을 들여 훈련 내용을 소화할 것입니다.,이렇게 하면 그는 적어도 1년 반 동안 다른 것을 배우거나 다른 고도에서 일한 후에 늦어도 2년 후에는 자신이 속한 직급에 상응하는 임금을 받을 수 있다. 이것이 바로 임금이다. 같은 무리에 비해 직급과의 관계가 1년 단축되었다.매달 적어도 1000파운드, 훈련 비용은 적어도 10000파운드가 더 든다.동시에 1 년의 시간도 절약할 수 있습니다.아무튼 나는 대열의 맨 앞까지 달렸다.
또 다른 차원에서 신인에 대한 훈련은 자신을 위해 실업보험을 미리 가입해 한 스님이 도교로 안내하는 것과 같다.올해 여름, 우리 반에서 가장 젊은 학생은 대학교 2학년 학생이고, 올해 그는 겨우 대학교 3학년이다.이번 학기에 나는 MCU를 막 배웠지만, 지금 ARM의 프로그래밍 작업은 이미 매우 인상적이다.그는 졸업한 지 1년여 후에도 실업할 수 있습니까?
이밖에 훈련을 통해 당신은 많은 업종의 일반인들이 모르는 일을 료해하면서 동시에 자신을 위해 대가를 찾을수 있다.예를 들어, 두 명의 엔지니어가 S3C2410과 PXA255를 사용하여 휴대용 장치를 제작하면 둘 다 4대를 작동할 수 있습니다.앞으로 1년 동안 일자리를 구하러 나가면 임금 격차가 최대 두 배로 늘어날 수 있다.왜?이것은 업계 일반인들이 모르는 규칙이다.2410은 민간용 제품입니다.이 업계는 그것에 대한 사용이 매우 나쁘다.제품 제조 비용은 매우 민감합니다.물론 인재 비용에도 민감하다.PXA255는 Intel 제품입니다.255 CPU 하나로 2410 3개를 살 수 있습니다.,업계에서 고급스러운 제품으로 정의되어 왔습니다.사용하는 회사는 큰 회사나 군대를 위해 봉사하는 회사입니다.그들은 원가를 개의치 않는다.네가 잘하기만 하면 모든 것을 쉽게 말할 수 있지만, 시스템을 개발하는 것은 비싸기 때문에 그렇게 하는 사람은 거의 없다.
자신에게 좋은 스승을 찾는 것에 대해 나는 그렇다고 생각한다. 왜냐하면 동급 엔지니어 사이에 잠재적인 경쟁 관계가 존재하기 때문이다. 많은 사람들이 자신이 알고 있는 것을 다른 사람에게 가르치려 하지 않는다. 이것은 그들이 실업할 것이라는 것을 의미한다.,이른바 교회 견습생, 스승은 굶어 죽었지만 우리 같은 사람들에게는 전혀 그런 관계가 없다.나는 임베디드 시스템 플랫폼의 설계에서 일정한 절차성에 도달했다.현재 나는 중국에서 이 기술 분야의 일에 종사하고 있다.돌파하기 어렵기 때문에 저는 여러분에게 많은 것을 개방했습니다. 예를 들면 아래 인터페이스 디자인에서 언급한 타이밍 인터페이스입니다.내가 그것에 대해 이야기하지 않는다면, 나는 그것이 거의 고급 하드웨어 엔지니어라고 생각한다.10% 만이 알고 있다.
6. 고급 내장형 시스템 하드웨어 엔지니어가 되는 데 필요한 기술
하드웨어 측면에서는 몇 가지 방향이 있습니다.단순 신호는 디지털 신호와 아날로그 신호로 나뉜다.시뮬레이션은 비교적 어렵고, 일반적으로 오랜 경험의 축적이 필요하다.저항이나 용량의 정밀도가 충분하지 않으면 신호 편차가 클 수 있습니다.그래서 젊은이들이 하는 일은 더 적다.기술의 발전에 따라 아날로그 회로의 디지털화는 이미 나타났다.예를 들어, 휴대 전화의 모뎀 무선 주파수 모듈은 모두 성숙한 칩을 사용합니다.당시 세계에서 두 회사만이 이 기술을 가지고 있었고, 그들은 자신이 시뮬레이션 기능을 가지고 있다고 생각했다.그다지 강하지 않은 사람은 이렇게 하기에 적합하지 않다.만약 당신이 정말 휴대폰의 무선주파수모듈을 받을수 있다면 일반수준에 도달하기만 하면 월급은 15K 이상일수도 있다.
다른 하나는 디지털 부분으로 일반 방향은 51/ARM 마이크로컨트롤러, DSP, FPGA로 나눌 수 있다.국내 FPGA 엔지니어들은 대부분 IC 설계사에서 IP 코어의 프런트엔드 검증 업무를 한다.이 섹션은 다루지 않습니다.문호 차원에서 미래는 그리 밝지 않다.IC 프런트엔드 검증 엔지니어라도 몇 년 동안 일해야 감당할 수 있다.DSP 하드웨어 인터페이스가 상대적으로 정형화되었습니다.드라이버나 알고리즘에 접근하지 않으면 미래가 좋지 않을 것이다.ARM 단편기의 내용은 더욱 풍부하다.업계 내의 제품 점유량이 많고 응용 인파가 넓다.그래서 취업 공간은 엄청나다.하드웨어 설계는 인터페이스 설계의 수준과 표준을 가장 잘 구현할 수 있다.이것은 여러 베테랑 하드웨어 엔지니어들의 PK이다.등급을 판단하는 근거.인터페이스 설계에서 가장 중요한 것은 단순한 연결이 아니라 시기를 보는 것입니다.예를 들어, PXA255 프로세서 I2C는 100Kbps의 속도를 필요로 합니다.I2C 주변 장치가 연결되어 있지만 100kbps에 도달하지 않으면 설계 실패가 불가피합니다.이런 경우는 아주 많다.예를 들어, 51 단편기는 버스에 LCD를 연결할 수 있지만 왜 이 LCD가 ARM 버스에 걸리지 않는지, ARM7 버스에는 외부 Winband SD 카드 컨트롤러가 있을 수 있지만, 왜 이 컨트롤러가 ARM9 또는 Xscale 프로세서에 액세스할 수 없다면 이것들이 문제입니다.
따라서 인터페이스는 시간과 매개 변수에 따라 간단한 연결이 아닙니다.우수한 하드웨어 엔지니어는 참고 계획 없이 더 나은 비용과 성능을 갖춘 제품을 설계할 수 있어야 한다.기존의 계획에 따르면, 그것은 또한 적절한 타당성 커팅을 해야 하지만, 이것은 무작위가 아니다. 나는 한 엔지니어가 프로젝트의 5V DC 칩을 1.8V DC 칩으로 바꾸고 직접 LDO로 바꿀 때 때때로 몇 개의 CPU를 태우는 것을 만난 적이 있다.며칠 전, 일부 사람들은 내가 이전에 PXA255 플랫폼을 기반으로 한 휴대용 GPS 장치의 프로그램을 최적화하는 데 도움을 주기를 희망했다.상황을 물어봤어요.지도는 SD 카드에 저장되어 있습니다. SPI는 SD 카드와 PXA255 인터페이스의 MMC 컨트롤러 사이에 사용되기 때문에 지도 읽기 속도가 매우 느립니다. 이 상황은 프로그램 문제가 아니라 설계의 심각한 결함입니다. 그래서 나는 그들이 업데이트하고 다시 시도하도록 몇 가지 제안을 했습니다.따라서 훌륭한 엔지니어가 되려면 시스템의 무결성을 파악하고 기존 회로를 이해해야합니다.다시 말해서, 한 세트의 회로도 후에 당신은 얼마나 보고 이해할 수 있습니까?80% 이상을 이해하지 못한다면 당신은 좋은 엔지니어가 아니라는 것을 의미합니다.
그 다음은 회로 디버깅 능력과 도면 검토 능력이지만, 가장 기본적인 능력은 원리 설계와 논리 설계의 PCB 드로잉이다.하드웨어 설계 엔지니어를 말합니다.ECAD 엔지니어는 PCB 보드를 그리는 전문 엔지니어와 EMC 문제를 해결하는 데 도움을 주는 EMC 설계 엔지니어로서 위의 하드웨어 설계 엔지니어와 분리할 수도 있습니다.하드웨어 엔지니어는 보드급 테스트 엔지니어, 즉 양호한 C 언어 능력을 갖춘 하드웨어 엔지니어로, 회로 기판 디버깅 과정에서 자신이 작성한 테스트 프로그램을 통해 하드웨어 기능을 검증할 수 있다.그런 다음 운영 체제 수준 기반 드라이버 개발자에게 전달합니다.
간단히 말해서, 하드웨어의 내용은 매우 복잡합니다.하드웨어에서 훈련하면 마스터가 될 거야.나는 항상 다른 사람을 위해 이 계획을 평가할 것이다.나는 항상 많은 베테랑 하드웨어 엔지니어들의 설계를 부정한다.따라서 엔지니어는 그렇게 할 것입니다. 이러한 상황은 일부 사람들에게 무례할 수 있지만, 하드웨어는 확실히 많은 베테랑 하드웨어 엔지니어들을 혼란스럽게 하는 미지의 것들이 많습니다.
따라서 고급 하드웨어 엔지니어는 이러한 기술을 갖추어야 합니다.첫째, 그들은 protel Orcad Powper PCB Maplux2ISE, VDHL 언어와 같은 EDA 설계의 보조 도구를 마스터해야합니다.이러한 도구를 사용하여 논리적으로 설계된 드로잉 보드를 그린 다음 인터페이스 설계 검토를 수행할 수 있어야 합니다.그리기 능력과 디버깅 능력.만약 네가 전체적인 방안 설계를 할 수 있다면, 너는 기본적으로 고급 엔지니어가 될 것이다.
하드웨어는 경험과 축적에 달려 있습니다.십 년에 한 번 칼을 갈고, 백 년에 한 바늘을 갈다.