본문 바로가기

programmer

(167)
Linker Section에 따른 메모리 매핑 공간 3 Map파일을 보다보면 알수 없는 기호들이 있다. lnear, abs18, csa등 알아야하나 싶은 명칭들이 많고 이를 왜 구분하고 사용하는지 모르고 쓰는경우들이 많다. 이번에는 이런 섹션에 따라 매핑되는 공간에 대해 알아보자. 먼저 주소 공간 종류에는 하기와 같은 구분이 있다. - linear: 4GB의 모든 주소 공간의 지정 - abs18: 각 세그먼트의 처음 16KB(0xX000_000 ~ 0xX000_3FFF)의 주소공간 - abs24: 각 세그먼트의 처음 16KB(0xX000_000 ~ 0xX01F_FFFF)의 주소공간 -csa: Context Save Area로 context가 저장되는 공간. 모든 것을 다 안다는것은 좋지만 고닲은 일이다. 이 중에서 딱 linear, abs18 만 보도록하자...
메모리 Section별 수행시간 차이 분석 2 Infineon Tricore 27x Block Diagram을 확인해 보면 각각의 메모리가 CPU와 어떤식으로 연결되어 사용되는지 확인 가능하다. 각각의 CPU 와 메모리 종류별 수행시간 차이를 분석해 보자. 한가지 방법으로 T32의 RunTime 기능을 사용해 수행 시간을 비교할 수 있다.(여러 방법이 있다.) 가지고있는 제어기 TC297Tx는 코어가 3개 이므로 Core0에서만 작동하도록 셋팅 하였다. 데이터 섹션 한정자 종류 하기 이미지와 같이 자료형(int)와 변수명 사이에 한정자를 입력해 사용할 수 있다. 여기서 __at(0x90000000) tc0_far_var0는 'Segment 9'에 포함되는 주소이므로 LMURAM에 선언되도록 설정 한 것이다. 하기 테이블을 참조하자. 수행 소스코드는 ..
Tasking사용 Infineon linker script 분석 1 제어기 개발을 진행하다 보면 메모리 사용 방법에 대한 고민을 하기 시작해야하는 시점이 온다. 자신이 개발한 소스코드가 하드웨어 메모리 기반으로 최적화 된 성능을 발현 시키고 싶다면. Linker Script를 사용한 메모리 Positioning을 시도해 보는것이 좋다.(feat. 교통정리) 예를 들어 멀티코어 환경(코어가 2개 이상인 경우)에서 코어에 바로 붙어있는 메모리(near)를 사용하고 모든 코어에서 사용되는 메모리는 LMU를 사용하면 메모리 접근을 최소화 할 수 있다. 각 메모리 위치별 수행시간 차이를 분석한 정보는 하기 링크에서 확인해 보자. https://suho413.tistory.com/entry/%EB%A9%94%EB%AA%A8%EB%A6%AC-Section%EB%B3%84-%EC%88..
통계, 빅데이터 분석 다른점 통계분석(R 이편함) 정체를 다 확인할 수 없기 때문에 모수가 존재함. 모집단 ---------> 표본집단 전교생(5천명) 무작위로 추출한 n명 표본집단으로 모 집단을 추론하는 방법 - 가설 검증 빅데이터 분석(Python이 편함) 모든 데이터를 다 처리할 수 있음.
Google Chart에서 한글이 깨질때(UTF-8설정) Google 차트를 생성하였으나 테이블에 생성된 한글이 깨지는 경우가 있다. 이럴 때는 Html 파일 head 태그 안에 encoding 설정을 입력해 주면 된다. 이후 Html 을 생성하면 정상적으로 한글이 나오는 것을 확인 가능하다.
Python 형변환 정리(Casting) 어떤 언어를 사용하더라도 데이터간의 형변환은 필수적이다. 구글링해서 하나하나 찾지 말고 한방에 정리해서 보자. 1. 정수 > 실수 #정수 > 실수 float(10) >>10.0 2. 실수 > 정수 #실수 > 정수 int(10.0) >>10 3.실수 > 정수 #정수, 실수 > 문자열 str(3) str(3.0) >>'3' 4. 실수 > 문자열 #실수 > 문자열 repr(123.2) >>'123.2' 5. 10진수 > 16진수 #10진수 > 16진수 hex(10) >>0xa 6. 10진수 > 8진수 #10진수 > 8진수 oct(10) >>0o12 7. 10진수 > 2진수 #10진수 > 2진수 bin(10) >>0b1010 8. 16,8,2 진수 > 10진수 #16,8,2 진수 > 10진수 a = 0b1010..
ERIKA 환경설정 ERIKA 빌드를 위해서는 환경설정이 필요하다. (T32, USB, Toolchain) ERIKA를 실행하고 window -> Preferens 를 선택한다. Oil -> Generator Properties 선택 설정해주어야 하는 것은 크게 4가지이다.(Tricore 예제 기준 현 예제 5개) 적용 완료 후 창을 닫아준다. ERIKA 에서 Infineon MCAL 을 지정할 수 있다. 참고로 Tricore ISAR은 하기와 같다 Tricore 1G ISAR Tricore 2G ISAR Infineon ISAR은 infineon 제품을 구매하고 회사와 MOU를 맺으면 MyInfeneon 라이브러리를 사용할 수 있다. 이는 추후 포스팅에 남기겠다.
ERIKA 튜토리얼_Cygwi(2/2) 이전 글에 이어 포스팅한다. Cygwin64를 실행한다. Make, gcc, doxygen, wget 모두 잘 설치가 된 것을 확인할 수 있다. 설치 설명 가이드 https://www.erika-enterprise.com/wiki/index.php?title=Cygwin Cygwin - ERIKA WIKI Synopsys This guide describes the download and installation process of Cygwin, a collection of GNU and Open Source tools, needed to build ERIKA Enterprise v3 applications. Download Launch your favourite web browser and go to t..
ERIKA 튜토리얼_Cygwi(1/2) 지난 포스팅에 이어 이번에는 ERIKA 튜토리얼을 따라 해 본다. ERIKA 사용을 위해선 Java, Cygwin, Doxygen 이 필요하다. 자바 설치는 생략하고 Cygwin을 클릭한다. 자신의 PC 사양에 맞추어 설치 파일을 다운로드 받는다. 초기 실행화면 설치할 파일을 인터넷으로 다운로드 받는 형식이다. 모든 설치는 C드라이브에서 진행 하는걸 추천한다.(경로 설정 문제가 있음) 컴파일러 등을 설치할폴더 위치 지정 인터넷 연결 방식을 선택 아무거나 선택해도 크게문제없다 (가까운 나라를 선택하면 좋다) 연결하는 과정 초기 실행화면(초기 실행자라면 all 트리에 디폴트로 설치하는 항목들이 나열되어 있다.) ** 필수 설치 항목(make, gcc-g++, doxygen, wget) 설치 방법은 View ..
ERIKA 설치 Erika는 OSEK/VDX 기반 RTOS 이다. 무료도구이고 라이센스정책을 따로 가지고 있다. RT Druid 라는 통합 빌드 툴도 제공한다. https://www.erika-enterprise.com/ Erika Enterprise RTOS v3 Erika Enterprise is a royalty free automotive OSEK/VDX certified Hard Real Time Operating System (RTOS). Main Features: Hard Real-Time support with Fixed Priority Scheduling and Immediate Priority Ceiling www.erika-enterprise.com Down Load Page 에가면 Erika 설치가..

반응형