전체 글 45

logging (screen out and file)

파이썬 프로그램 실행시 화면에 나오는 것을 로깅해서 디버깅할 때 이용할 필요가 있다. 이에, 화면에 출력하면서 파일로 저장하는 방법에 대한 고찰임 ref :stackoverflow.com/questions/9321741/printing-to-screen-and-writing-to-a-file-at-the-same-time import logging level = logging.INFO format = ' %(message)s' handlers = [logging.FileHandler('filename.log'), logging.StreamHandler()] logging.basicConfig(level = level, format = format, handlers = hand..

Python 2021.02.19

[Verilog] 새로 컴파일하지 않고 테스트 입력/조건을 바꾸는 방법

[Verilog] 새로 컴파일하지 않고 테스트 입력/조건을 바꾸는 방법 Posted on October 27, 2010 by Donny Compiled-code방식 Verilog 시뮬레이터는 크게 세단계로 동작합니다. Compile: Verilog Code의 문법을 체크하고, 해석하고(parse/analyze)하고 Compile한다. Elaboration: 계층구조(design hierarchy)를 구축하고 신호들을 연결하고 초기값을 계산한다. Simulation: 회로의 동작을 시뮬레이션한다. 복잡하게 나누어 생각하고 싶지 않은 분들도 계실텐데, C프로그램을 해보신 분들이라면 쉽게 이해할 수 있습니다. Compiler: C컴파일러를 이용해서 C 코드를 Object코드로 만드는 것과 유사합니다. Elab..

ASIC 2015.07.27

svn 데이터 dump 및 load 방법

출처 : http://julymorning.kr/xe/index.php?document_srl=8457&mid=tiptech_progsvn 데이터 dump 및 load 방법( Repository 를 MyTest 로 가정) 1. 해당 Repository 가 생성된 상위 directory 로 이동 한다. 2. Repository 를 dump 한다. command >> svnadmin dump MyTest > MyTest.20006.09.09.dump -> 전체 dump command >> svnadmin dump MyTest -r 10 > MyTest.20006.09.09.dump -> 리비전 10 만 dump command >> svnadmin dump MyTest -r 10:20 > MyTest.2000..

Subversion 2015.07.27

넋두리 - 시작하면서 : Platform Independent

여러 군데서 연구/일 하다보니 자연스레 운영체제를 여러개 사용한다. 집 : Mac회사 : Linux (Ubuntu, CentOS), Windows연구실 : Mac, Windows, Linux (Ubuntu, CentOS)이 때문에 자연스럽게 Platform 독립적인 코드로 작성하고자 하는 욕구가 강하다. FTDI Chip의 FT2232D라는 제품을 회사에서 I2C Writer 목적으로 개발했는데, 그 때는 Windows 기반에서만 사용할 수 있게 Visual Studio로 개발하였다. FTDI Chip회사에서 예제도 제공해주고, 자연스럽게 UI개발만 해서 I2C Writer기로 사용할 수 있었는데, 일반 컴퓨터나 리눅스에서도 동작하도록 만드는게 Best 라고 생각해서 개발 환경을 찾아보는 중에 역쉬나 P..

FTDI 2015.06.21

Problem 3. Largest prime factor

The prime factors of 13195 are 5, 7, 13 and 29. What is the largest prime factor of the number 600851475143 ? 번역 - 13195의 소인수는 5, 7, 13, 29이다. 숫자 600851475143의 소인수 중 가장 큰 수는 무엇인가? 풀이 전략 : 1. 제시된 숫자의 소수를 구해 리스트에 담는다 2. 리스트에 담긴 소수를 이용 가장 작은 값 부터 제시된 숫자의 나머지가 0인지 판단한다. 3. 나머지가 0인 경우 제시된 숫자를 소수로 나누고 몫을 다시 리스트에 담긴 소수를 이용 가장 작은 값부터 나누어 나머지가 0인지 판단한다. 4. 이렇게 최종적으로 나온 값들을 리스트에 담는다. 리스트의 정렬하여 가장 큰 값을 찾는다..

Project Euler 2013.07.03

ASTRO SCAN DEF

ASTRO Back-end Tool로 전달할 때 SCAN CHAIN 땜에 Timing 잡기 매우 어렵게 된다. 이에 Place 전에 Scan Chain을 Detach 하고 CTS 이후에 Schan Chain을 attach하는 Flow를 지닌다. 합성시에 Scan Chain을 어떻게 형성하였는지 P&R 툴에게 알려줘야 하는데, SCAN_DEF 파일로 이러한 정보를 알려준다. Scan을 Sub-module에서 넣을 경우 이후 Top Net이 Sub-Module과 다를 경우 SCAN DEF 파일을 수정해야 하는 경우게 생기는데, 다행히 Solve Net에 이러한 걸 생각했는지 변환 Script가 존재한다. 하기 내용 참조하면 될 것 같다. 사용법은 하기와 같다 ./prefix_scandef -top sw067..

ASIC 2013.06.08

VCS MX Simulation Setup (Verilog Top + Sub VHDL)

아래와 같은 방법으로 수행함 (간만에 Simulation Setup 진행함) vlogan +v2k -sverilog -full64 -f ./run_verilog.f vhdlan -full64 -f run_vhdl.f vcs -full64 -R work.tb_top_module -l ./log/sim.log Working Library 등록은 synopsys_sim.setup 에 입력함 File : synopsys_sim.setup --VCS MX setup file for ASIC --Mapping default work directory WORK > DEFAULT DEFAULT : ./work --Library Mapping --STATS_PKG : ./stat_work --MEM_PKG : ./mem..

Simulator 2013.04.18