반응형

설치 OS는 리눅스 CentOS 7 을 이용했다.

Allegro PCB 17.4 기준 시스템 요구 사양은 아래와 같다.

OS CentOS, RHEL 6.5, 7.4(64bit) / SLES 11 SP4 (64bit), SLES 12 SP3 (64bit) 
하드웨어 Intel® Core™ i7 4.30 GHz or AMD Ryzen™ 7 4.30 GHz with at least 4 cores (최소 이보다 빨라야 좋음)
8 GB 이상 시스템 메모리 
12 GB swap 공간 
10 GB 이상 디스크 여유 공간 
TrueColor (65000 colors) required
GUI Gnome

 

* 리눅스 상의 라이센스 서버가 돌아갈 수 있는 환경

Linux CentOS/RHEL6

Linux CentOS/RHEL7

Linux SLES11

Linux SLES12

 

* 리눅스 상 필요한 유틸리티

Compiler : GCC / G++ 6.3.0

필수 Compiler 옵션 : 64 bit 컴파일러

필수 DLL 링커 옵션 : -fPLC -shared

 

 

리눅스 PC에 구축해도 되지만, 테스트로 VirtualBOX를 이용했다.

위 사양에 맞춰 아래와 같이 파티션 및 세팅을 진행.

파티션의 편의를 위해 LVM으로 구축

 

 

반응형

 

* 파티션은 여유롭게 여러사람이 접속하는 서버로 쓴다고 가정하여 IC 플래폼 정도의 기준으로 맞춤.

[파티션 사양]

 - standard type

/boot

    최소 500MB, 권장 2GB

 

 - LVM

swap

    최소 8GB 16GB (x 1인당 추가)

root

    70GB이상필요 (100GB 이상~250GB)

/home

    나머지

 

VirtualBox 으로 리눅스 구성하는 방법 아래 참고.

https://ansan-survivor.tistory.com/34

 

[CentOS 7] [Virtual Box] Oracle Virtual Machine (가상머신)에 리눅스 설치

먼저 Window10 OS내에 리눅스 OS를 가상머신에 구축하기 위해 Oracle Virtual Machine을 이용했다. 다운로드는 아래사이트에서 본인 OS에 맞게 설치하면 된다. https://www.oracle.com/virtualization/technologie..

ansan-survivor.tistory.com

 

 

1. 기본 구성

이름 설정, VirtualBOX 경로 설정, Type(확정은 아님) 설정
메모리 최소 8GB설정 (권장 16GB)

        나머지는 기본설정을 따른다.

 

2. 하드 용량 크게 할당 (최소 요구사항은 10GB 이상임)

 

3. 컨트롤 편의를 위해 Host PC와 양방향 통신

 

4. CentOS 7 iso 이미지 삽입 

    ( 네트워크 브리지 할당 (옵션) )

 

5. CentOS 7 설치 진행

    필요한 GUI 및 유틸리티 기본설정으로 설치

 

6. LVM 파티셔닝

    6-1. /boot  타입 standard 할당

    6-2. SWAP에 16GB 할당

    6-3. 나머지 LVM으로 root와 /home에 할당

    (파티셔닝 결과)

     결과 확인 후 Done

 

7. Network 기본 연결 설정

root및 admin 계정 설정 후 설치를 기다림...

 

8. 관리자 권한 접속

 

(VirutalBox가 해상도가 전체화면이 되지 않는 경우 아래 참고.)

https://ansan-survivor.tistory.com/439

 

[CentOS 7 / Virtual Box] 화면 해상도 전체 크기가 안 맞춰질 때 (Guest Image 넣어도 안될 때) 1분안에 해

보통 CD를 넣으면 화면 해상도를 알아서 맞춰준다. (아래 참고) 그러나 간혹 Kernel 문제로 안되는 경우가 있다. (버전문제) ansan-survivor.tistory.com/118 [Virtual Box] 화면 해상도 전체 크기 맞추기 1. 장치.

ansan-survivor.tistory.com

 

9. yum update 및 upgrade 

sudo yum -y update
sudo yum -y upgrade

 

<원격접속 편의성을 위한 옵션 설정>

 

1. Selinux permissive 해제

vi /etc/selinux/config

2. SSH 방화벽 포트(22번포트) 열기

sudo firewall-cmd --permanent --add-port=22/tcp
sudo firewall-cmd --reload

 

 

* 위와 같은 구축을 끝내면 Cadence Allegro 플래폼을 설치할 수 있다. (아래 참고)

https://ansan-survivor.tistory.com/1363

 

[PCB Editor] Cadence Allegro PCB 리눅스(CentOS 7) 설치

* Allegro PCB / Allegro IC Package 플래폼을 리눅스로 설치하기 위해선 아래와 같이 OS 세팅이 선행되어야 한다. https://ansan-survivor.tistory.com/1362 [PCB Editor] Cadence Allegro PCB 플래폼을 리눅스(C..

ansan-survivor.tistory.com

 

반응형
반응형

특정 Database를 사용하기 위해서는 먼제 아래와 같이 USE문이 선행되어야 한다.

USE 데이터베이스_이름

생성한 또는 불러온 db가 왼쪽 리스트에 있는데, USE문을 사용하고 번개로 실행하면, 해당 db가 찐하게 하이라이트되며, 이제 그 DB에 SQL문을 사용하는 것이 된다.

 

SELECT문 기본 형태 (옵션을 사용할 시 아래 옵션이 나열되는 순서는 변경되면 안된다.)

SELECT select_list
	[ FROM table_source ] 
    	[ WHERE search_condition ]  
	[ GROUP BY group_by_expression ]  
	[ HAVING search_condition ]  
	[ ORDER BY order_expression [ ASC | DESC ] ]

이를 더 간단히, 자주쓰이는 형태

SELECT [열이름] 
	FROM [테이블이름] 
	WHERE [조건]

 

제일 자주 사용하는 SELECT문 (특정 db의 테이블의 전체 내용을 볼 때)

SELECT * FROM [db이름/테이블이름]

특정 db를 USE로 잡고, 해당 db의 테이블의 모든 내용을 보여주는 결과

 

 

특정 db 내의 특정 table명을 불러와서 보여주는 방법 (2가지)

 - USE문을 사용안했을 때

SELECT * FROM db이름.테이블이름;

 - USE문을 사용했을 때

SELECT * FROM 테이블이름;

(USE로 database선택을 안했을 때)

SELECT * FROM employees.titles;

(동일 명령)

USE employees;
SELECT * FROM titles;

 

 

특정 Title명으로 골라서 뽑아낼 수 있다.

USE employees;
SELECT first_name, last_name, gender FROM employees;

 

 

<주석 처리하기, 한줄 주석, 여러줄 주석>

 한줄 주석 : --

 여러줄 주석 : /*   */

USE employees;  -- 여기는 한줄 주석
SELECT first_name, last_name, gender FROM employees;
/*
여기는 여러줄의 주석
입니다.
*/

해당부는 무시하고 진행된다.

 

 

<현재 존재하는 항목 보기 - SHOW문>

    모든 데이터베이스 항목 보기

SHOW DATABASES;

    특정 테이블의 상태를 확인하기

USE employees;
SHOW TABLE STATUS;

 

 

 

 

 

 

반응형
반응형

크롬은 다행이도 마지막으로 열고 있던 창을 임시로 갖고있다.

실수로 크롬을 닫아버렸다면

 

"Ctrl + Shift + T" 를 누르면 마지막으로 봤던 창이 다시 열린다.

 

1. 실수로 닫기

2. 크롬 실행

3. Ctrl + Shift + T 

 

그럼 돌아온다.

반응형

 

반응형
반응형

아래는 문자열 뒤집기, 배열 뒤집기를 작동시키는 C언어 코드이다.

 

예를들어 "hello"가 입력이 되면, 이를 "olleh"로 뒤집어 출력한다.

문자열 배열 char str[6] = {'h','e','l','l','o'}; 가 입력되었을 때 뒤집어진다.

또한 포인터를 이용한 문자열이 들어올때도 마찬가지이다.

char* str = "hello"; 가 입력이 들어와도 Type이 char* 동일하기 때문에 가능하다.

아래는 코드

반응형
#include <stdio.h>

int main()
{
	//char str[6] = {'h','e','l','l','o'};
	char* str = "hello";
	int len = 0;

	// str에 저장된 문자열의 길이갯수를 저장(NULL 제외)
	len = strlen(str);   

	printf("출력 : \n");
	for (int i = len - 1; i >= 0; --i) {   // for문의 초기값을 len으로 주어 뒤에서 부터 문자열을 출력한다.
			printf("%c", str[i]);
	}
	printf("\n");

	return 0;
}

 

 

반응형
반응형

아래 코드는 두 수의 최대공약수를 구해주는 함수에 관한 코드이다.

/*
	최대공약수 구하기 알고리즘
	2개 값 입력, 최대 공약수 출력 함수
	알고리즘:
		1. v가 u보다 크면 v와 u값을 바꾼다.
		2. u = u - v
		3. u가 0이면 v가 최대공약수. 아니면 다시 처음으로 돌아간다.
*/

#include<stdio.h>

int GCD(void) {
	int u = 0;
	int v = 0;
	int temp = 0;
	int result = 0;

	printf("2개의 값을 입력하시오.\n");
	printf("a:");
	scanf_s("%d", &u);
	printf("b:");
	scanf_s("%d", &v);

	while(1)
	{
		if (v > u) {
			temp = u;
			u = v;			// 1. v가 u보다 크다면, v와 u값을 바꾼다.
			v = temp;

			u = u - v;		// 2. 
		}
		else {
			u = u - v;
		}

		if (u == 0)
		{
			result = v;		// 3. u가 0이면 v가 최대공약수
			break;
		}
	}
	return result;
}

int main(void)
{
	int result;
	result = GCD();
	printf("최대공약수는: %d", result);

	return 0;
}

 

반응형

 

똑같은 기능을 하는 최대 공약수를 구하는 방법을 아래는 재귀함수를 이용한 방식이다.

/*
	최대공약수 구하기 알고리즘(Recursive Function 모드 (재귀함수))
	2개 값 입력, 최대 공약수 출력 함수
	알고리즘:
		1. v가 0이 아니면,
			1.1. u = u % v
			1.2. u와 v를 교환
			1.3. 1으로 돌아감.
		2. v가 0이면 u가 최대공약수
*/

#include<stdio.h>

int GCD_recursion(int u, int v) {
	
	if (v == 0)
		return u;
	else
		return GCD_recursion(v, u % v);
}

int main(void)
{
	int u, v, result;
	
	printf("2개의 값을 입력하시오.\n");
	printf("a:");
	scanf_s("%d", &u);
	printf("b:");
	scanf_s("%d", &v);

	result = GCD_recursion(u, v);
	printf("최대공약수는: %d", result);

	return 0;
}

 

아래 함수는 똑같이 최대 공약수를 구하는 방법이지만, 알고리즘 성능이 좀 더 향상 된 방법이다.

/*
	최대공약수 구하기 알고리즘(성능 개선 모드)
	2개 값 입력, 최대 공약수 출력 함수
	알고리즘:
		1. v가 0이 아니면,
			1.1. u = u % v
			1.2. u와 v를 교환
			1.3. 1으로 돌아감.
		2. v가 0이면 u가 최대공약수
*/

#include<stdio.h>

int GCD(void) {
	int u = 0;
	int v = 0;
	int temp = 0;
	int result = 0;

	printf("2개의 값을 입력하시오.\n");
	printf("a:");
	scanf_s("%d", &u);
	printf("b:");
	scanf_s("%d", &v);

	while(v != 0)	// v가 0이 아니면 무한 반복
	{
		u = u % v;	// 1.1.
		temp = v;	// 1.2.
		v = u;
		u = temp;
	}
	result = u;		// 2.

	return result;
}

int main(void)
{
	int result;
	result = GCD();
	printf("최대공약수는: %d", result);

	return 0;
}

 

 

반응형
반응형

Atmega를 컴파일하는 Atmel Studio는 우리가 흔이 알고있는 Microsoft Visual Studio와 다른 자료형 사이즈 크기를 지니고 있다.

 

아트메가는 8 bit MCU 이다.

 

Atmel에서 컴파일 되는 아래 사이즈 크기이다.

int크기, char크기, float크기 등등

bit 1bit 0,1
char 8bit -128~127
unsigned char 8bit 0~255
signed char 8bit -128~127
int 16bit -32768~32767
unsigned int 16bit 0~65535
signed int 16bit -32768~32767
long 32bit -2147483648~2147483647
unsigned long 32bit 0~4294967295
signed long 32bit -2147483648~2147483647
float 32bit -3.402e38~3.402e38 (정확도: ±1.175e-38)
double 32bit -3.402e38~3.402e38 (정확도: ±1.175e-38)

(출처: https://riyenas.tistory.com/43)

 

 

반응형
반응형

동일한 패턴이 반복될 때 복사 붙여넣기 기능을 활용하면 좋다.

 

 

아래와 같이 배선 (Cline)과 via가 반복되는 경우 복사 붙여넣기를 쓸 수 있다.

 

 

<배선, Via 복사 붙여넣기>

 

1. 복사하고자 하는 요소 Find로 선택

 

2. 해당 요소 드래그 후 copy

 

3. 필요한 부분에 하나씩 붙여넣기 하면 된다. (Net는 Pin의 정보를 보고 알아서 부여되므로 걱정할 필요 없다)

 

반응형

 

<Shape이 포함되어 있는 경우 복사 붙여넣기>

 

1. 복사하고자 하는 요소 Find로 선택

2. 해당 요소 드래그 후 copy

3. 아래 옵션이 중요하다.

    Retain net of vias 체크시, 복사하고자 하는 원본의 via의 net가 보존됨. (바뀌지 않음)

    Retain net of Shapes 체크시, 복사하고자 하는 원본의 shape의 net가 보존됨. (바뀌지 않음)

왼쪽은 체크 했을 때 => 처음에 복사한 via와 shape의 net가 유지됨. 

오른쪽을 체크해제 했을 때 => Pin의 정보에 따라 dynamic하게 net가 변경됨. (shape은 연결된 곳을 몰라 dummy가 됨)

 

(tip, x, y 좌표를 이용해서 여러개를 한번에 배치가 가능하다)

 

 

 

 

반응형
반응형

OrCAD PCB 또는 Allegro PCB로 제작한 설계도면을 쉽게 열고 확인할 수 있는 무료 뷰어를 다운로드 할 수 있다.

방법은 아래 참고.

https://ansan-survivor.tistory.com/735

 

[PCB Editor] OrCAD / Allegro PCB 무료 뷰어 다운로드 (OrCAD PCB Free viewer / Allegro PCB Free viewer)

OrCAD PCB / Allegro PCB Free viewer를 설치할 수 있는 링크다. https://www.cadence.com/ko_KR/home/tools/pcb-design-and-analysis/allegro-downloads-start.html Allegro Downloads Allegro®/OrCAD® FREE Ph..

ansan-survivor.tistory.com

 

* 라이센스 유저는 Hotfix를 업그레이드 하는 것만으로도 최신버전의 free viewer로 업데이트 된다.

OrCAD PCB 17.4 버전이 최신으로 업데이트 되면서 Free viewer또한 좀더 세분화 하여 컨트롤 할 수 있도록 업그레이드가 되었다. (아래 영상)

https://www.youtube.com/watch?v=_n4bm7BevSY 

 

업그레이드 된 사항은 아래와 같다.

(PCB보드 import 후 뷰어 처음 화면)

 

1. 선택할 수 있는 항목 필터

Trace만 선택하면, 배선만 선택 가능. 마찬가지로 필요 항목만 골라서 필터 가능.
All objects하면 전체 다 활성화 됨. 한번더 누르면 다 꺼짐

 

2. 선택 항목의 속성 보기

    아래와 같이 항목 선택 후, 우측의 탭을 누르면 해당 항목이 갖고있는 각종 속성이 나온다.

    속성 탭은 NET를 선택해야 나온다.

 

3. 어떤 .pad 파일로 만들어졌는지 표기 됨.

 

4. 하단 탭의 NET을 클릭 후, 아무 NET를 선택하면 해당 항목들이 하이라이트 됨

 

5. 필요한 경우 특정 NET의 색을 바꿀 수 있음

 

6. 특정 Net를 하이라이트 시킬 수 있음

 

7. Layer의 색상 정보를 켜고 끌 수 있음

    전부켜거나, 전부 끌 수 있음

 

반응형

 

8. 나머지 각종 실크데이터, Text, Assembly 등 아래 항목에서 켜고 끄기 컨트롤 가능

 

9. Top면 Bottom면 변경하여 보기 가능

 

10. 그 외 Shadow모드 (특정 부분만 강조하게), 전체 색 밝기 조절 등등 조절 가능

 

 

 

 

 

 

 

반응형
1···18192021222324···181

+ Recent posts