쉬운
오늘날 다양한 산업용 이더넷 프로토콜은 일반적으로 하나의 단일 애플리케이션을 사용한 모놀리식 접근 방식을 처리하기 어렵기 때문에 서로 다른 소프트웨어 버전의 동일한 하드웨어를 생산하고 제공해야 합니다. 이 기사에서는 RZ/N2L 및 RZ/T2M을 위한 간편한 부트 로더 솔루션을 제시합니다. 이는 사용된 산업용 이더넷 프로토콜을 감지하고 런타임 중에 플래시에서 RAM으로 적절한 애플리케이션을 로드합니다. RAM 소비 및 실행 속도에 대한 다양한 요구 사항은 내부 SystemRAM, 외부 SDRAM 또는 외부 HyperRAM을 유연하게 사용하여 지원됩니다. 기존 이더넷 프로토콜 애플리케이션에서는 시작 코드와 링커 스크립트를 약간만 변경하면 됩니다.
ROM의 시작 코드는 플래시에 저장된 로더 매개변수에 따라 부트 로더 애플리케이션을 플래시에서 내부 RAM으로 복사합니다. 부트로더가 시작됩니다. 산업용 이더넷 프로토콜 감지는 아래에 자세히 설명된 대로 수행됩니다. 결과에 따라 부트 로더는 해당 코드와 데이터를 플래시에서 RAM으로 복사하고 최종적으로 해당 위치에서 애플리케이션을 시작합니다.
사용자는 RAM 유형을 정의하고 각 프로토콜 애플리케이션의 위치를 지정해야 합니다. 부트 로더 애플리케이션의 테이블에는 플래시 소스 주소, RAM 대상 주소 및 애플리케이션 크기가 포함됩니다. 필요한 값은 응용 프로그램의 링커 스크립트를 기반으로 링커 프로세스 중에 자동으로 채워집니다. RZ/T2M의 경우 듀얼 코어 애플리케이션을 지원하기 위해 두 번째 바이너리를 적절하게 복사할 수 있습니다.
낮은 수준의 시작 후 부트 로더는 하드웨어를 초기화하여 이더넷 인터페이스를 활성화합니다. 소프트웨어는 수신 이더넷 패킷의 EtherType 필드를 평가하여 네트워크에서 사용되는 프로토콜을 감지합니다. 특정 수의 프로토콜 프레임이 수신되면 부트 로더는 해당 애플리케이션을 플래시에서 RAM으로 복사하고 실행을 시작합니다. 이전 하드웨어 초기화가 이전으로 되돌려집니다.
이 솔루션은 Renesas RSK 및 FSP를 기반으로 한 쉬운 예를 제시하여 네트워크에서 널리 사용되는 산업용 이더넷 프로토콜을 감지하고 이에 적합한 프로토콜 애플리케이션을 선택하는 방법을 보여줍니다. 이 솔루션을 채택하려면 기존 독립 실행형 애플리케이션을 약간만 변경하면 됩니다. e2studio용 RZ/N2L 및 RZ/T2M용 데모 코드는 이미 사용 가능합니다.