hotchpotch/wikipedia-multilingual-ir-pairs huggingface dataset:
대화형 증명 시스템 대화형 증명의 종류
1986년, 골드와서와 시프서는 아마도 놀랍게도, 검증자가 코인 던지기를 증명자로부터 숨기는 능력이 두 라운드만 더 추가된 아서-멀린 공개 코인 프로토콜이 모든 동일한 언어를 인식할 수 있다는 점에서 결국 거의 도움이 되지 않는다는 것을 보여주었다. 그 결과 공개 코인 프로토콜과 비공개 코인 프로토콜은 거의 동등하다. 사실, 바바이가 1988년에 보여주듯이, 모든 상수 k에 대해 AM[k] = AM이므로, IP[k]는 AM에 비해 이점이 없다.
이러한 클래스의 위력을 보여주기 위해, 하나의 그래프의 정점을 재배열하여 다른 그래프와 동일하게 만들 수 있는지 여부를 결정하는 문제인 그래프 동형 문제를 고려해보자. 이 문제는 NP에 속하는데, 증명 인증서가 그래프를 동일하게 만드는 순열이기 때문이다. 그래프 동형 문제의 여집합, 즉 NP에 속하는 것으로 알려지지 않은 co-NP 문제는 AM 알고리즘을 가지고 있으며, 이를 이해하는 가장 좋은 방법은 비공개 코인 알고리즘을 통하는 것이다.
대화형 증명 시스템 대화형 증명의 종류
비공개 코인은 유용하지 않을 수 있지만, 더 많은 라운드 상호 작용은 유용하다. 확률적 검증 기계와 전능한 증명자가 다항식 개수의 라운드 동안 상호 작용하도록 허용하면, IP라고 불리는 문제 클래스를 얻는다.
1992년, 아디 샤미르는 복잡도 이론의 핵심 결과 중 하나에서 IP가 다항 공간에서 일반적인 결정론적 튜링 기계로 풀 수 있는 문제 클래스인 PSPACE와 같음을 밝혀냈다.
시스템의 요소가 양자 컴퓨팅을 사용할 수 있도록 허용하면, 해당 시스템은 양자 대화형 증명 시스템이라고 불리며, 해당 복잡도 종류는 QIP라고 불린다. 일련의 결과들은 2010년 QIP = PSPACE라는 획기적인 발견으로 이어졌다.
대화형 증명 시스템 대화형 증명의 종류
대화형 증명 시스템은 NP에 속하지 않는다고 여겨지는 문제들을 해결할 수 있을 뿐만 아니라, 일방향함수의 존재에 대한 가정 하에, 증명자는 검증자에게 해에 대한 정보를 전혀 주지 않고도 해를 확신시킬 수 있다. 이는 검증자가 전체 해를 신뢰할 수 없을 때 중요하다. 처음에는 검증자가 인증서를 보지 못했는데도 해가 있다고 확신할 수 있다는 것이 불가능해 보이지만, 영지식 증명이라고 알려진 이러한 증명은 실제로 NP의 모든 문제에 대해 존재한다고 여겨지며 암호학에서 가치가 있다. 영지식 증명은 골드와서, 미칼리, 래코프가 IP에 관한 1985년 원본 논문에서 특정 수론 언어에 대해 처음 언급했다. 그러나 그들의 위력은 오데드 골드라이히, 실비오 미칼리, 아비 위그더슨에 의해 NP 전체에 대해 시연되었고, 이는 러셀 임파글리아초와 모티 융에 의해 IP 전체로 처음 확장되었다.
대화형 증명 시스템 대화형 증명의 종류
IP 설계자들의 한 가지 목표는 가능한 가장 강력한 대화형 증명 시스템을 만드는 것이었으며, 처음에는 검증자를 더 강력하게 만들지 않고는(그렇게 하면 비실용적이게 됨) 더 강력하게 만들 수 없을 것처럼 보였다. 골드와서 등은 1988년 "Multi prover interactive proofs: How to remove intractability assumptions"에서 이를 극복했다. 이 논문은 두 명의 독립적인 증명자가 있는 MIP라는 IP 변형을 정의한다. 두 증명자는 검증자가 메시지를 보내기 시작한 후에는 통신할 수 없다. 범인과 그의 공범이 따로 심문받을 때 거짓말을 하는지 알아내기 더 쉬운 것처럼, 다른 증명자와 다시 확인할 수 있다면 악의적인 증명자가 검증자를 언어에 없는 문자열을 수락하도록 속이려 하는 것을 감지하는 것이 훨씬 쉽다.
실제로, 이것은 매우 유용하여 바바이, 포트노우, 룬드는 MIP가 비결정론적 기계가 지수 시간 내에 해결할 수 있는 모든 문제의 클래스인 NEXPTIME과 같다는 것을 보여줄 수 있었다. 이는 매우 큰 클래스이다. NEXPTIME은 PSPACE를 포함하며, PSPACE를 엄격하게 포함하는 것으로 여겨진다. 두 명 이상의 상수를 추가해도 더 많은 언어를 인식할 수 있게 되지는 않는다. 이 결과는 이 정리의 "축소판"으로 볼 수 있는 유명한 PCP 정리의 길을 열었다.
MIP는 또한 IP가 가정해야 하는 일방향 함수 가정 없이도 NP의 모든 언어에 대한 영지식 증명을 설명할 수 있는 유용한 속성을 가지고 있다. 이것은 증명 가능한 깨지지 않는 암호화 알고리즘 설계에 영향을 미친다. 더욱이, MIP 프로토콜은 IP의 모든 언어를 상수 라운드 내에서 인식할 수 있으며, 세 번째 증명자가 추가되면 상수 라운드 내에서 NEXPTIME의 모든 언어를 인식할 수 있어 IP보다 그 위력을 다시 보여준다.
어떤 상수 k에 대해서도 k명의 증명자와 다항식 개수의 라운드를 가진 MIP 시스템이 단 두 명의 증명자와 상수 개수의 라운드를 가진 동등한 시스템으로 변환될 수 있다는 것이 알려져 있다.
IP의 설계자들이 바바이의 대화형 증명 시스템의 일반화를 고려한 반면, 다른 이들은 제약을 고려했다. 매우 유용한 대화형 증명 시스템은 PCP(f(n), g(n))이며, 이는 아서가 f(n)개의 임의 비트만 사용하고 멀린이 보낸 증명 인증서의 g(n)개의 비트만 검사할 수 있는 (본질적으로 임의 접근을 사용하는) MA의 제약이다.
다양한 PCP 클래스에 대한 여러 가지 쉽게 증명할 수 있는 결과들이 있다. 랜덤성이 없지만 인증서에 접근할 수 있는 다항 시간 기계의 클래스인 는 단순히 NP이다. 다항식 개수의 랜덤 비트에 접근할 수 있는 다항 시간 기계의 클래스인 는 co-RP이다. 아로라와 사프라의 첫 번째 주요 결과는 라는 것이었다. 다시 말해, NP 프로토콜에서 검증자가 증명 인증서의  비트만 선택하여 볼 수 있도록 제약되어도, 사용할 수 있는  개의 랜덤 비트가 있는 한 아무런 차이가 없다.
더욱이, PCP 정리는 증명 접근 횟수를 상수까지 줄일 수 있다고 주장한다. 즉, 이다. 이들은 NP의 이러한 유용한 특성화를 사용하여 P = NP가 아닌 한 특정 NP-완전 문제의 최적화 버전에 대한 근사 알고리즘이 존재하지 않음을 증명했다. 이러한 문제들은 현재 근사 난해라고 알려진 분야에서 연구되고 있다.
DSPACE
계산 복잡도 이론에서 DSPACE 또는 SPACE는 결정론적 튜링 기계의 메모리 공간 자원을 설명하는 연산 자원이다. 이는 주어진 알고리즘으로 주어진 계산 문제를 해결하는 데 "일반적인" 물리적 컴퓨터가 필요로 하는 총 메모리 공간의 양을 나타낸다.
DSPACE 복잡도 종류
DSPACE 측정은 특정 양의 메모리 공간을 사용하여 해결할 수 있는 모든 결정 문제의 집합인 복잡도 종류를 정의하는 데 사용된다. 각 함수 f(n)에 대해 SPACE(f(n))라는 복잡도 종류가 있으며, 이는 O(f(n)) 공간을 사용하는 결정론적 튜링 기계에 의해 해결될 수 있는 결정 문제의 집합이다. 사용될 수 있는 계산 시간의 양에는 제한이 없지만, 다른 복잡도 측정(예: 교대)에는 제한이 있을 수 있다.
몇 가지 중요한 복잡도 종류는 DSPACE로 정의된다. 여기에는 다음이 포함된다.
증명:
만약 s(n) = o(log log n)에 대해 비정규 언어 L ∈ DSPACE(s(n))가 존재한다고 가정하자. M을 공간 s(n)에서 L을 결정하는 튜링 기계라고 하자. 가정에 의해 L ∉ DSPACE(O(1))이므로, 임의의 에 대해 M의 입력 중 k보다 더 많은 공간을 요구하는 것이 존재한다.
k보다 더 많은 공간을 요구하는 가장 작은 크기(n으로 표시)의 입력 x를 잡고, 를 입력 x에 대한 M의 모든 구성의 집합이라고 하자. M ∈ DSPACE(s(n))이므로, 이며, 여기서 c는 M에 의존하는 상수이다.
DSPACE 복잡도 종류
S를 x에 대한 M의 모든 가능한 교차열의 집합이라고 하자. x에 대한 M의 교차열 길이는 최대 임을 주목하자: 만약 이보다 길다면, 일부 구성이 반복되어 M은 무한 루프에 빠질 것이다. 교차열의 모든 요소에 대해 가능한 경우도 최대 이므로, x에 대한 M의 서로 다른 교차열의 수는 다음과 같다.
비둘기집 원리에 따르면, 인 i < j인 인덱스가 존재하며, 여기서 와 는 각각 경계 i와 j에서의 교차열이다.
x'를 i + 1부터 j까지의 모든 셀을 제거하여 x에서 얻은 문자열이라고 하자. 기계 M은 입력 x'에서도 입력 x에서와 똑같이 동작하므로, x'를 계산하는 데 x를 계산하는 데와 같은 공간이 필요하다. 그러나 |x' | < |x|, 이는 x의 정의와 모순된다. 따라서 가정한 언어 L은 존재하지 않는다. □
위 정리는 공간 위계 정리에서 공간 구성 가능 함수 가정의 필요성을 시사한다.
DSPACE 기계 모델
DSPACE는 전통적으로 결정론적 튜링 기계에서 측정된다. 몇 가지 중요한 공간 복잡도 종류는 준선형이다. 즉, 입력 크기보다 작다. 따라서 입력 크기 또는 출력 크기에 대해 알고리즘에 "비용을 부과"하는 것은 사용된 메모리 공간을 진정으로 포착하지 못할 것이다. 이는 입력 및 출력 테이프가 있는 다중 테이프 튜링 기계를 정의함으로써 해결되는데, 이는 표준 다중 테이프 튜링 기계와 동일하지만 입력 테이프에는 절대 쓰지 않고 출력 테이프에서는 절대 읽지 않는다는 점이 다르다. 이를 통해 L (로그 공간)과 같은 더 작은 공간 종류를 모든 작업 테이프(특수 입력 및 출력 테이프 제외)가 사용한 공간의 양으로 정의할 수 있다.
알파벳의 적절한 거듭제곱을 취하여 많은 기호를 하나로 묶을 수 있으므로, 모든 c ≥ 1 및 f(n) ≥ 1인 f에 대해 c f(n) 공간에서 인식 가능한 언어의 종류는 f(n) 공간에서 인식 가능한 언어의 종류와 동일하다. 이는 정의에서 점근 표기법의 사용을 정당화한다.
DSPACE 위계 정리
공간 위계 정리는 모든 공간 구성 가능 함수 에 대해 공간 에서 결정 가능하지만 공간 에서는 결정 불가능한 어떤 언어 L이 존재함을 보여준다.
DSPACE 다른 복잡도 종류와의 관계
DSPACE는 비결정론적 튜링 기계의 메모리 공간 종류인 NSPACE의 결정론적 대응물이다. 사비치 정리에 따르면, 다음과 같다.
NTIME은 다음과 같은 방식으로 DSPACE와 관련이 있다. 모든 시간 구성 가능 함수 t(n)에 대해,
.
결정론적 시간에 대한 훨씬 더 나은 시뮬레이션이 알려져 있다: 만약 이라면,
이는 윌리엄스의 결과로, 홉크로프트, 폴, 밸리언트의 이전  한계를 개선한 것이다.
반면에, 인 모든 함수에 대해,
.
ALL (복잡도)
계산 가능성과 복잡도 이론에서 ALL은 모든 결정 문제의 집합이다.
ALL (복잡도) 다른 종류와의 관계
ALL은 RE와 Co-RE를 포함하는 모든 결정 문제의 복잡도 종류를 포함하며, RE도 Co-RE도 아닌 셀 수 없이 많은 언어를 포함한다. 이것은 모든 다른 복잡도 종류를 포함하는 가장 큰 복잡도 종류이다.
유니버설 씬 디스크립션
유니버설 씬 디스크립션(Universal Scene Description, USD)은 3차원 컴퓨터 그래픽스 데이터 교환을 위한 프레임워크이다. 이 프레임워크는 협업, 비파괴 편집, 그리고 그래픽스 데이터에 대한 다양한 관점과 의견을 가능하게 하는 데 중점을 둔다. USD는 시각 효과, 건축, 디자인, 로봇공학, CAD, 렌더링을 포함한 많은 산업에서 사용된다.
유니버설 씬 디스크립션 역사
이것은 픽사에 의해 개발되었으며 2016년 수정된 아파치 라이선스에 따라 오픈 소스 소프트웨어로 처음 공개되었다. 픽사, 어도비, 애플, 오토데스크, 엔비디아는 리눅스 재단의 JDF(Joint Development Foundation)와 함께 2023년 8월 1일 AOUSD(Alliance for OpenUSD)를 발표하며 "픽사의 유니버설 씬 디스크립션 기술의 표준화, 개발, 진화 및 성장을 촉진"할 것이라고 밝혔다.
유니버설 씬 디스크립션 파일 형식
사양에 사용되는 파일 형식은 다음과 같다.
ACE (파일 포맷)
컴퓨팅에서 ACE는 마르셀 렘케가 개발하고 나중에 e-merge GmbH가 인수한 독점적인 데이터 압축 아카이브 파일 형식이다. 인기가 절정에 달했던 시기는 1999년부터 2001년까지였는데, 당시에는 RAR보다 압축률이 약간 더 좋았으나 이후 RAR이 더 인기를 얻게 되었다.
ACE (파일 포맷) WinAce
e-merge GmbH가 유지 관리하는 WinAce는 마이크로소프트 윈도우에서 ACE 파일을 압축하고 압축을 해제하는 데 사용된다. 설치 시 사용자에게 등록비를 지불하거나 WhenU SaveNow 애드웨어를 설치할지 선택할 수 있다. e-merge GmbH는 또한 DOS용 명령줄 ACE를 제작하며, 리눅스 (i386) 및 MacOS용 프리웨어 명령줄 인터페이스 압축 해제 도구인 "Unace"를 제공한다. e-merge GmbH는 또한 개발자를 위한 여러 라이브러리를 제공하는데, 여기에는 "unace.dll"이라는 프리웨어 압축 해제 동적 링크 라이브러리도 포함된다. 일부 타사 아카이버는 이 DLL을 사용하여 형식을 읽을 수 있다. 위에 언급된 것 중 어떤 것도 오픈 소스 자유 소프트웨어가 아니다.
2007년 11월 23일, WinACE 버전 2.69가 출시되었으며, WhenU를 대체하는 덜 침해적인 애드웨어 응용 프로그램인 MeMedia AdVantage가 포함되었다. 이 릴리스에는 다른 주요 변경 사항은 없다.
ACE (파일 포맷) 다른 구현체
Unace 1.2b의 이전 버전은 자유 소프트웨어이며 저자 마르셀 렘케에 의해 GPL 라이선스 하에 배포되지만, 버전 2.0 이상 ACE 아카이브는 추출할 수 없다.
ACE 2.0 아카이브를 지원하는 Unace 2.5의 최신 버전은 마르셀 렘케에 의해 제한적인 source available 라이선스로 제공된다.
오래된 독립적인 C 구현체는 디르크 스퇴커의 XAD-Master libxad의 일부이다. ACE 1.0 아카이브 압축 해제에만 제한적으로 사용된다.
2017년 이후로, 다니엘 로에틀리스버거가 만든 BSD 라이선스 파이썬 모듈 및 CLI 유틸리티가 있으며, ACE 2.0 형식 아카이브의 압축 해제를 지원한다.
ACE (파일 포맷) 타사 지원
ACE 파일 압축은 독점 정보로 라이선스되어 WinACE를 통해서만 가능하며, ACE 파일 압축 해제는 여러 타사 압축 프로그램에서 지원된다. 그러나 거의 모든 프로그램(ACE 2.x 형식을 지원하는 프로그램)은 e-merge GmbH의 독점 "unace.dll"을 사용하여 이를 수행한다.
ACE (파일 포맷) 악성 소프트웨어 배포에 사용
적어도 2015년부터 ACE 아카이브는 이메일을 통해 피해자에게 악성 소프트웨어를 전달하는 데 사용되었다. 이 전략은 인기 있는 압축 소프트웨어가 ACE 아카이브를 압축 해제할 수 있지만, 메일 필터, 웹 콘텐츠 필터 및 바이러스 검사 소프트웨어와 같은 보안 제품에서 ACE 형식에 대한 지원이 일반적으로 미약했기 때문에 가능했다.
ACE (파일 포맷) 보안 취약점
2019년 2월, WinRAR 및 기타 압축 제품에서 사용되는 unacev2.dll 라이브러리에서 여러 주요 보안 취약점이 발견되었다. WinACE 지원이 중단되었으므로 사용자들은 WinRAR 및 이 라이브러리를 사용하는 다른 제품에서 ACE 아카이브를 열지 않도록 권고된다. WinRAR은 버전 5.70부터 ACE 지원을 중단했으며, 유사한 제품들도 뒤를 따르고 있다.
Zstd
Zstandard는 페이스북의 Yann Collet이 개발한 비손실 데이터 압축 알고리즘이다. Zstd는 해당 C로 된 참조 구현이며, 2016년 8월 31일 오픈 소스 소프트웨어로 공개되었다.
이 알고리즘은 2018년에 RFC 8478로 발행되었으며, 관련 미디어 타입 "application/zstd", 파일 확장자 "zst", 그리고 HTTP 콘텐츠 인코딩 "zstd"를 정의한다.
Zstd 특징
Zstandard는 DEFLATE 알고리즘(1991년에 개발되어 원본 ZIP 및 gzip 프로그램에 사용됨)과 유사한 압축비를 제공하지만, 특히 압축 해제 속도가 더 빠르도록 설계되었다. 압축 수준은 음수 7(가장 빠름)부터 22(압축 속도는 가장 느리지만 최상의 압축비)까지 조절 가능하다.
버전 1.3.2(2017년 10월)부터 zstd는 rzip 또는 lrzip과 유사하게 매우 긴 범위의 검색 및 중복 제거(--long, 128 MiB 창)를 선택적으로 구현한다.
압축 속도는 가장 빠른 수준과 가장 느린 수준 간에 20배 이상 차이가 날 수 있지만, 압축 해제는 균일하게 빠르며 가장 빠른 수준과 가장 느린 수준 간에 20% 미만의 차이를 보인다. Zstandard 명령줄에는 I/O 조건, 주로 출력 기록 속도에 따라 압축 수준을 변경하는 "적응형"(--adapt) 모드가 있다.
Zstd 특징
Zstd는 최대 압축 수준에서 LZMA, LZHAM, PPMX와 유사한 압축비를 제공하며, 틀:Synthesis span Zstandard는 현재 파레토 최전선에 도달했으며, 유사하거나 더 나은 압축비를 가진 다른 어떤 현재 사용 가능한 알고리즘보다 빠르게 압축을 해제한다.
사전은 작은 파일의 압축비에 큰 영향을 미칠 수 있으므로 Zstandard는 사용자가 제공한 압축 사전을 사용할 수 있다. 또한 샘플 집합에서 사전을 생성할 수 있는 훈련 모드를 제공한다. 특히, 하나의 사전을 로드하여 파일 내에는 중복이 없더라도 파일 간에 중복이 있는 대규모 파일 집합(예: 로그 파일)을 처리할 수 있다.
Zstd 설계
Zstandard는 사전 일치 단계(LZ77)와 큰 검색 창, 그리고 빠른 엔트로피 부호화 단계를 결합한다. 이는 허프먼 부호화(리터럴 섹션의 항목에 사용됨)와 유한 상태 엔트로피(FSE) –ANS의 빠른 테이블 버전인 tANS–를 시퀀스 섹션의 항목에 사용한다. FSE가 기호 간에 상태를 전달하는 방식 때문에 압축 해제는 각 블록의 시퀀스 섹션 내 기호를 역순(마지막부터 처음까지)으로 처리하는 것을 포함한다.
Zstd 사용
리눅스 커널은 2017년 11월(버전 4.14)부터 btrfs 및 squashfs 파일 시스템의 압축 방법으로 Zstandard를 포함했다.
2017년 Allan Jude는 Zstandard를 FreeBSD 커널에 통합했으며, 이후 코어 덤프(사용자 프로그램 및 커널 패닉 모두)의 압축 옵션으로 통합되었다. 또한 개념 증명 OpenZFS 압축 방법을 만드는 데 사용되었으며 2020년에 통합되었다.
AWS 레드쉬프트 및 RocksDB 데이터베이스는 Zstandard를 사용한 필드 압축을 지원한다.
2018년 3월, 캐노니컬은 우분투 리눅스 배포판의 deb 패키지 압축 방법으로 zstd를 기본값으로 사용하는 것을 테스트했다. deb 패키지의 xz 압축과 비교할 때, zstd 레벨 19는 패키지 파일이 6% 더 커지는 대신 압축 해제 속도가 상당히 빠르다. 2018년 4월(버전 1.6~rc1)에 데비안(및 이후 우분투)에 지원이 추가되었다.
Zstd 사용
페도라는 2018년 5월(페도라 릴리스 28)에 RPM에 ZStandard 지원을 추가했으며, 2019년 10월(페도라 31) 릴리스 패키징에 사용했다. 페도라 33에서는 파일 시스템이 기본적으로 zstd로 압축된다.
아치 리눅스는 2019년 10월 pacman 5.2 패키지 관리자 출시와 함께 zstd를 패키지 압축 방법으로 지원했으며, 2020년 1월에는 공식 저장소의 패키지에 xz 대신 zstd로 전환했다. 아치는 zstd -c -T0 --ultra -20 -를 사용하며, 모든 압축된 패키지의 총 크기는 0.8% 증가했지만(xz 대비), 압축 해제 속도는 14배 빨라졌고, 여러 스레드를 사용할 때 압축 해제 메모리는 50 MiB 증가했으며, 압축 메모리는 증가했지만 사용된 스레드 수에 비례한다. 아치 리눅스는 나중에 mkinitcpio 초기 램디스크 생성기의 기본 압축 알고리즘으로도 zstd로 전환했다.
Zstd 사용
압축 수준을 선택할 수 있는 알고리즘의 전체 구현은 닌텐도 스위치 하이브리드 게임 콘솔용 홈브루 커뮤니티에서 개발한 .NSZ/.XCZ 파일 형식에 사용된다. 또한 .RVZ Wii 및 닌텐도 게임큐브 디스크 이미지 파일 형식에서 지원되는 여러 압축 알고리즘 중 하나이다.
2020년 6월 15일, Zstandard는 zip 파일 형식의 버전 6.3.8에 코덱 번호 93으로 구현되었으며, 6월 1일에 출시된 버전 6.3.7에 구현된 이전 코덱 번호 20은 더 이상 사용되지 않게 되었다.
2024년 3월, 구글 크롬 버전 123(및 크로미엄 기반 브라우저인 브레이브 또는 마이크로소프트 엣지 등)은 HTTP 헤더 Content-Encoding에 zstd 지원을 추가했다. 2024년 5월, 모질라 파이어폭스 릴리스 126.0은 HTTP 헤더 Content-Encoding에 zstd 지원을 추가했다.
Zstd 라이선스
참조 구현은 BSD 허가서에 따라 깃허브에 게시되었다. 2016년 8월 31일 출시된 버전 1.0부터 추가적인 특허 권한 부여가 있었다.
2017년 8월 20일 출시된 버전 1.3.1부터 이 특허 부여는 철회되었고 라이선스는 BSD + GPLv2 이중 라이선스로 변경되었다.
렘펠-지브-오버휴머
렘펠-지브-오버휴머(Lempel–Ziv–Oberhumer, LZO)는 압축 해제 속도에 중점을 둔 비손실 데이터 압축 알고리즘이다.
렘펠-지브-오버휴머 설계
1996년에 출시된 오리지널 "lzop" 구현은 마르쿠스 프란츠 크사버 요하네스 오버후머가 아브라함 렘펠과 야코브 지브의 이전 알고리즘을 기반으로 개발했다. LZO 라이브러리는 다음 특성을 가진 여러 알고리즘을 구현한다.
LZO는 중첩 압축 및 제자리 압축 해제를 지원한다. 블록 압축 알고리즘으로서 데이터 블록을 압축 및 압축 해제한다. 압축 및 압축 해제에 사용되는 블록 크기는 동일해야 한다. LZO는 데이터 블록을 일치(슬라이딩 딕셔너리) 및 일치하지 않는 리터럴 실행으로 압축하여 중복성이 높은 데이터에서 좋은 결과를 생성하고 압축 불가능한 데이터를 수용 가능하게 처리하며, 최소 1KB의 블록 크기로 측정할 때 원본 크기의 최대 1/64까지만 압축 불가능한 데이터를 확장한다.
렘펠-지브-오버휴머 구현
참조 구현은 ANSI C로 작성되었으며 GNU 일반 공중 사용 허가서에 따라 자유 소프트웨어로 제공되었다. 코드의 저작권은 마르쿠스 F. X. J. 오버후머가 소유한다. 이 코드는 1996년에 처음 출판되었다. 오버후머는 또한 lzop이라는 명령줄 프런트엔드를 작성했다.
LZO 버전은 펄, 파이썬, 자바 언어에서 사용할 수 있다. 다양한 LZO 구현은 AIX, 아타리 TOS (아타리 ST), ConvexOS, IRIX, 리눅스, Mac OS, 닌텐도 64, 팜 OS, 플레이스테이션, 솔라리스, SunOS, VxWorks, Wii, Win32에서 작동하는 것으로 보고되었다.
FFmpeg의 libavutil 라이브러리는 비손실 비디오 압축을 위한 가능한 방법으로 자체 LZO 구현을 포함한다. FFmpeg의 압축 해제기 구현은 OpenConnect에서도 주니퍼 네트웍스 및 펄스 시큐어 VPN 서버에서 전송하는 LZO 압축 ESP 패킷을 지원하기 위해 사용된다.
리눅스 커널은 일부 기능에 LZO 구현을 사용한다:
LZX
LZX는 LZ77 계열의 압축 알고리즘으로, DEFLATE의 약간 개선된 버전이다. 같은 이름의 파일 압축기의 이름이기도 하다. 둘 다 1990년대에 조너선 포브스와 토미 포우타넨이 발명했다.
LZX LZX 알고리즘의 사용 사례
LZX는 저자들이 캐나다의 워털루 대학교에서 공부하던 중 1995년에 아미가 파일 압축기로 공개되었다. 이 소프트웨어는 당시 압축 소프트웨어에서 흔히 볼 수 있었던 셰어웨어였다. 등록된 버전에는 평가판에서 사용할 수 없었던 수정 사항과 개선 사항이 포함되어 있었다. 1997년, 저자들은 압축기에 대한 작업을 중단하고 등록을 받지 않게 되자, 누구나 등록된 버전을 사용할 수 있도록 무료 키 파일을 제공했다.
LZX LZX 알고리즘의 사용 사례
1996년 포브스는 마이크로소프트에 입사했고, 마이크로소프트의 캐비닛 압축기는 LZX 압축 방식을 포함하도록 향상되었다. 개선 사항에는 가변 검색 창 크기가 포함되었는데, 아미가 LZX는 64 KB로 고정되었고, 마이크로소프트 LZX는 32에서 2048 킬로바이트 (32,768에서 2,097,152바이트) 사이의 2의 거듭제곱으로 범위가 지정될 수 있었다. 인텔 80x86 "CALL" 명령을 감지하여 피연산자를 상대 주소 지정에서 절대 주소 지정으로 변환하는 특별한 전처리기가 추가되어, 동일한 위치에 대한 호출이 압축기가 일치시킬 수 있는 반복된 문자열을 생성하여 80x86 이진 코드의 압축률을 향상시켰다. (이 기술은 나중에 Branch-Call-Jump [BCJ] 필터링으로 일반화되었다.)
마이크로소프트가 클래식 도움말 파일 형식을 대체하는 마이크로소프트 압축 HTML 도움말을 도입했을 때, 모든 HTML 데이터를 LZX 알고리즘으로 압축하도록 선택했다. 그러나 무작위 접근 속도를 향상시키기 위해, 압축기는 64킬로바이트(65,536바이트) 간격마다 재설정되고 32킬로바이트 간격마다 16비트 경계에 재정렬되도록 변경되었다. 따라서 HTMLHelp 소프트웨어는 항상 압축된 데이터 스트림의 시작부터 디코딩하는 대신 가장 가까운 64킬로바이트 간격을 즉시 탐색하고 거기서부터 디코딩을 시작할 수 있었다.
마이크로소프트 리더용 마이크로소프트 LIT 파일은 단순히 CHM 파일 형식의 확장이며, 따라서 LZX 압축도 사용한다.
윈도우 비스타와 윈도우 7의 설치/드라이브 이미지 파일 형식인 윈도우 이미징 포맷은 LZX를 압축 방식 중 하나로 사용한다.
윈도우 10에서는 윈도우 이미징 포맷의 LZX 압축이 새로운 CompactOS NTFS 파일 압축에 사용된다.
마이크로소프트는 디스크 및 대역폭 요구 사항을 줄이기 위해 엑스박스 라이브 아바타에 LZX 압축을 사용한다.
LZX LZX 파일 압축 해제
unlzx 프로그램과 XAD는 아미가 LZX 아카이브를 압축 해제할 수 있다. cabextract 프로그램은 LZX 방식을 사용하여 마이크로소프트 캐비닛 파일을 압축 해제할 수 있다. CHM 문서에 명시된 바와 같이, CHM 파일을 역컴파일하거나 보는 데 사용할 수 있는 다양한 크로스 플랫폼 도구들이 있다. LIT 파일은 Convert LIT 소프트웨어를 사용하여 압축 해제할 수 있다.
Industry Foundation Classes
Industry Foundation Classes(IFC)는 건축, 빌딩, 건설 산업 데이터(ABCII)를 설명하기 위한 CAD 데이터 교환 데이터 스키마이다. IFC 파일 형식은 ISO 10303-21 표준을 기반으로 하며 ABCII의 정의는 기본 EXPRESS를 사용하여 문서화된다.
이것은 단일 공급업체나 공급업체 그룹이 통제하지 않는 플랫폼 독립적인 공개 데이터 스키마 사양이다. buildingSMART(이전의 국제 상호운용성 연합, IAI)가 건축, 공학 및 건설(AEC) 산업에서의 상호운용성을 촉진하기 위해 개발한 데이터 모델을 가진 객체 기반 데이터 스키마이며, 빌딩 정보 모델링(BIM) 기반 프로젝트에서 일반적으로 사용되는 협업 형식이다. IFC 모델 사양은 공개되어 있으며 이용 가능하다. ISO에 등록되어 있으며 공식 국제 표준 ISO 16739-1:2024이다.
Industry Foundation Classes
상호운용성에 중점을 둔 덕분에 2010년 덴마크 정부는 공공 지원 건축 프로젝트에 IFC 형식의 사용을 의무화했다. 2017년 핀란드 국영 시설 관리 회사 Senate Properties는 모든 프로젝트에서 IFC 호환 소프트웨어와 BIM 사용을 요구하기 시작했다. 또한 노르웨이 정부, 보건 및 국방 클라이언트 조직은 모든 프로젝트에서 IFC BIM 사용을 요구하며, 많은 지자체, 개인 클라이언트, 계약자 및 설계자들도 IFC BIM을 사업에 통합했다. 건설 분야에서 IFC 데이터 스키마의 인기는 주로 형상 교환 목적으로 계속 증가했다.
Industry Foundation Classes 역사
IFC 이니셔티브는 1994년 오토데스크가 통합 애플리케이션 개발을 지원할 C++ 클래스 세트 개발에 대한 자문을 위해 업계 컨소시엄을 구성하면서 시작되었다. 12개의 미국 회사가 이 컨소시엄에 참여했다. 이 회사들에는 AT&T, HOK 건축가, 하니웰, 캐리어, 티쉬만 및 버틀러 매뉴팩처링이 포함되었다. 처음에는 상호운용성 산업 연합으로 명명되었던 이 연합은 1995년 9월에 모든 이해관계자에게 회원 자격을 개방하고 1997년에 국제 상호운용성 연합으로 이름을 변경했다. 새로운 연합은 AEC 빌딩 수명 주기에 대응하는 중립적인 AEC 제품 모델로서 Industry Foundation Class(IFC)를 출판하는 것을 목표로 비영리 산업 주도 조직으로 재편성되었다. 2005년에 추가적인 이름 변경이 있었으며, IFC 사양은 현재 buildingSMART에 의해 개발 및 유지 관리되고 있다.
Industry Foundation Classes 파일 형식
IFC는 동일한 기본 데이터를 다양한 인코딩으로 지원하는 여러 파일 형식을 정의한다.
IFC-SPF는 ASCII 형식으로, 사람이 읽을 수 있지만 파일 크기 팽창, 파일을 처음부터 끝까지 순차적으로 읽어야 함, 파일 중간 추출 불가능, 파일 구문 분석 속도 느림, 정의가 비계층적이라는 일반적인 ASCII 파일 문제점을 겪는다. ifcXML 및 ifcZIP 외에도 최신 데이터 형식에는 RDF/XML 또는 터틀(ifcOWL 온톨로지 사용), ifcJSON (자바스크립트 객체 표기법, 널리 사용 가능) 및 ifcHDF5 (계층적 데이터 형식 v5, 바이너리)가 포함된다. 2020년에 buildingSmart는 두 가지 JSON 프로젝트를 진행 중이었다: ifcJSON v4(EXPRESS 기반 IFC v4의 직접 매핑)와 ifcJSON v5, 그리고 IFC를 바이너리 형식으로 전환하는 연구 프로젝트.
Industry Foundation Classes 아키텍처
IFC는 EXPRESS 기반의 엔티티-관계 모델을 정의하며, 객체 기반 상속 계층 구조로 구성된 수백 개의 엔티티를 포함한다. 엔티티의 예로는 IfcWall과 같은 빌딩 요소, IfcExtrudedAreaSolid와 같은 형상, IfcCartesianPoint와 같은 기본 구조가 있다.
가장 추상적인 수준에서 IFC는 모든 엔티티를 루트 엔티티와 비루트 엔티티로 나눈다. 루트 엔티티는 IfcRoot에서 파생되며, 이름, 설명 및 개정 제어 속성과 함께 ID(GUID) 개념을 갖는다. 비루트 엔티티는 ID를 갖지 않으며, 인스턴스는 루트 인스턴스에서 직접 또는 간접적으로 참조될 때만 존재한다. IfcRoot는 세 가지 추상 개념으로 세분된다: 객체 정의, 관계 및 속성 집합:
Industry Foundation Classes 아키텍처
IfcObjectDefinition은 객체 발생과 객체 유형으로 나뉜다. IfcObject는 일련 번호와 물리적 배치를 갖는 제품 설치와 같은 객체 발생을 캡처한다. IfcTypeObject는 특정 모델 번호와 공통 모양을 갖는 제품 유형과 같은 유형 정의(또는 템플릿)를 캡처한다. 발생 및 유형은 배우("누가"), 제어("왜"), 그룹("무엇을"), 제품("어디에"), 프로세스("언제"), 자원("어떻게")의 여섯 가지 기본 개념으로 더 세분된다.
IfcRelationship은 객체 간의 관계를 캡처한다. 기본 관계 유형은 구성, 할당, 연결, 연관 및 정의의 다섯 가지이다.
IfcPropertyDefinition은 동적으로 확장 가능한 속성 집합을 캡처한다. 속성 집합은 하나 이상의 속성을 포함하며, 이는 단일 값(예: 문자열, 숫자, 단위 측정), 제한된 값(최소값 및 최대값 포함), 열거형, 값 목록, 값 테이블 또는 데이터 구조일 수 있다. IFC는 특정 유형에 대해 수백 개의 속성 집합을 정의하지만, 사용자 정의 속성 집합은 애플리케이션 공급업체 또는 최종 사용자가 정의할 수 있다.
Industry Foundation Classes 아키텍처
IfcProduct는 모든 물리적 객체의 기본 클래스이며 공간 요소, 물리적 요소, 구조 분석 항목 및 기타 개념으로 세분된다. 제품은 관련 재료, 형상 표현 및 공간 내 배치를 가질 수 있다. 공간 요소에는 IfcSite, IfcBuilding, IfcBuildingStorey 및 IfcSpace가 포함된다. 물리적 빌딩 요소에는 IfcWall, IfcBeam, IfcDoor, IfcWindow, IfcStair 등이 포함된다. 분배 요소(HVAC, 전기, 배관)는 요소가 다양한 서비스에 대한 특정 연결을 가질 수 있는 포트 개념을 가지며, 시스템을 형성하기 위해 케이블, 파이프 또는 덕트를 사용하여 연결된다. 벽에 문이나 창문으로 채워지는 개구부가 있는 것과 같은 빌딩 요소에는 다양한 연결 관계가 사용된다.
재료는 제품 전체에 대해 정의될 수도 있고, 지정된 부분에 대한 층, 프로필 또는 구성 요소로 정의될 수도 있다.
표현은 명시적 3D 형상에 대해 정의될 수 있으며, 선택적으로 매개변수 제약 조건으로 정의될 수 있다. 각 표현은 잘 알려진 이름을 가진 IfcShapeRepresentation으로 식별된다.
Industry Foundation Classes 아키텍처
배치는 위치, 수직 각도 및 수평 각도를 나타낼 수 있다.
수량은 총 면적, 총 부피, 총 중량, 순 중량 등과 같은 산출 목적으로 정의될 수 있다. IFC는 각 요소 유형에 특정한 다양한 수량과 형상 및 관계에 따른 계산 방법을 정의한다.
IfcProcess는 프로세스의 기본 클래스이며 작업, 이벤트 및 절차로 세분된다. 프로세스는 기간을 가질 수 있으며 특정 시간 기간에 발생하도록 예약될 수 있다. 프로세스는 선행 작업이 완료된 후 후속 작업이 시작되도록 주요 경로법에 따라 순서가 지정될 수 있다. 프로세스는 요약 집계를 위해 하위 프로세스로 중첩될 수 있다. 프로세스는 수행된 작업으로 생성된 출력을 나타내는 제품에 할당될 수 있다.
IfcResource는 자원의 기본 클래스이며 재료, 노동, 장비, 하청 계약, 인력 등으로 세분된다. 자원은 다양한 비용과 가용성 일정을 가질 수 있다. 자원은 세분화된 할당을 위해 하위 자원으로 중첩될 수 있다. 자원은 자원을 대신하여 수행되는 작업을 나타내는 프로세스에 할당될 수 있다.
Industry Foundation Classes 아키텍처
IfcProject는 전체 프로젝트를 캡슐화하고 프로젝트 이름, 설명, 기본 단위, 통화, 좌표계 및 기타 컨텍스트 정보를 나타낸다. 유효한 IFC 파일은 항상 정확히 하나의 IfcProject 인스턴스를 포함해야 하며, 모든 다른 객체는 직간접적으로 이와 관련된다. 프로젝트는 특정 용도에 따라 여러 건물, 여러 참여자 및 여러 단계를 포함할 수 있다.
프로젝트별 정보 외에도 IfcProject는 제품 유형과 같이 공유 정의를 가져올 수 있는 외부 프로젝트를 참조할 수도 있다. 각 외부 프로젝트는 IfcProjectLibrary [IFC2x4]와 IfcRelAssociatesLibrary 및 IfcLibraryInformation을 사용하여 가져온 프로젝트 라이브러리의 특정 개정을 식별한다.
프로젝트는 개정 관리를 지원하며, 모든 IfcRoot 기반 엔티티는 고유 식별자를 가지며 추가, 수정, 삭제 또는 변경 없음으로 표시될 수 있다. 이러한 기능은 여러 IFC 파일을 결정적으로 병합할 수 있게 하여 사람의 개입 없이 데이터 무결성을 보장한다.
자동 시험 장비
자동 시험 장비(automatic test equipment) 또는 자동화 시험 장비(automated test equipment, ATE)는 자동화를 사용하여 측정값을 신속하게 수행하고 시험 결과를 평가하여 피시험 장치 (DUT), 시험 장비 (EUT) 또는 시험 장치 (UUT)로 알려진 장치에 대한 시험을 수행하는 모든 장치를 말한다. ATE는 간단한 컴퓨터 제어 디지털 멀티미터일 수도 있고, 정교한 전자 패키지 부품이나 웨이퍼 테스트 (시스템 온 칩 및 집적 회로 포함)의 결함을 자동으로 테스트하고 진단할 수 있는 수십 개의 복잡한 테스트 장비(실제 또는 시뮬레이션된 전자 테스트 장비)를 포함하는 복잡한 시스템일 수도 있다.
ATE는 전자 제조 산업에서 제조된 전자 부품 및 시스템을 테스트하는 데 널리 사용된다. ATE는 항공전자 및 자동차의 전자 모듈을 테스트하는 데도 사용된다. 레이더 및 무선 통신과 같은 군사 애플리케이션에 사용된다.
자동 시험 장비 반도체 산업에서
반도체 소자 테스트용으로 명명된 반도체 ATE는 간단한 부품(저항기, 축전기, 유도자)부터 집적 회로(IC), 인쇄 회로 기판(PCB), 복잡하고 완전히 조립된 전자 시스템에 이르기까지 광범위한 전자 장치 및 시스템을 테스트할 수 있다. 이를 위해 프로브 카드가 사용된다. ATE 시스템은 특정 장치가 작동하는지 확인하거나 최종 소비자 제품에 사용되기 전에 결함을 신속하게 찾아내는 데 필요한 테스트 시간을 줄이도록 설계되었다. 제조 비용을 절감하고 수율을 향상시키기 위해 반도체 장치는 제조 후 테스트를 거쳐 불량 장치가 소비자에게 전달되는 것을 방지해야 한다.
자동 시험 장비 구성 요소
반도체 ATE 아키텍처는 하나 이상의 소스 및 캡처 장비(아래에 나열)를 동기화하는 마스터 컨트롤러(컴퓨터로 구성된다. 역사적으로 ATE 시스템은 맞춤형 컨트롤러 또는 전자계전기를 사용했다. 피시험 장치(DUT)는 핸들러 또는 프로버라고 하는 다른 로봇 기계를 통해 ATE에 물리적으로 연결되며, ATE의 리소스를 DUT에 맞추는 맞춤형 인터페이스 테스트 어댑터(ITA) 또는 "픽스처"를 통해 연결된다.
자동 시험 장비 구성 요소
산업용 PC는 신호 발생기/감지 카드를 수용하기 위한 충분한 PCI/PCIe 슬롯을 갖춘 19인치 랙 표준으로 패키징된 일반 데스크톱 컴퓨터이다. 이는 ATE에서 컨트롤러 역할을 한다. 테스트 애플리케이션 개발 및 결과 저장은 이 PC에서 관리된다. 대부분의 최신 반도체 ATE에는 광범위한 매개변수를 생성하거나 측정하는 여러 컴퓨터 제어 장비가 포함되어 있다. 이 장비에는 장치 전원 공급 장치(DPS), 매개변수 측정 장치(PMU), 임의 파형 발생기(AWG), 디지털 변환기, 디지털 IO 및 유틸리티 공급 장치가 포함될 수 있다. 이 장비는 DUT에 대한 다양한 측정값을 수행하며, 장비는 적절한 시간에 파형을 생성하고 측정하도록 동기화된다. 응답 시간 요구 사항에 따라 실시간 시스템도 자극 및 신호 캡처용으로 고려된다.
대량 인터커넥트는 테스트 장비(PXI, VXI, LXI, GPIB, SCXI, & PCI)와 테스트 중인 장치/단위(D/UUT) 간의 커넥터 인터페이스이다. 이 섹션은 ATE와 D/UUT 간에 신호가 들어오고 나가는 노드 역할을 한다.
자동 시험 장비 구성 요소
예를 들어, 특정 반도체 장치의 전압을 측정하기 위해 ATE의 디지털 신호 처리(DSP) 장비는 전압을 직접 측정하고 결과를 컴퓨터로 보내 신호 처리하여 원하는 값이 계산된다. 이 예는 전류계와 같은 기존 장비가 장비가 수행할 수 있는 측정 횟수와 측정에 걸리는 시간의 제한으로 인해 많은 ATE에서 사용되지 않을 수 있음을 보여준다. 매개변수를 측정하기 위해 DSP를 사용하는 한 가지 주요 장점은 시간이다. 전기 신호의 최대 전압과 신호의 다른 매개변수를 계산해야 하는 경우, 피크 검출기 장비뿐만 아니라 다른 매개변수를 테스트하기 위한 다른 장비도 사용해야 한다. 그러나 DSP 기반 장비를 사용하는 경우 신호의 샘플을 만들고 단일 측정에서 다른 매개변수를 계산할 수 있다.
모든 장치가 동일하게 테스트되는 것은 아니다. 테스트는 비용을 추가하므로 저가형 부품은 거의 완전히 테스트되지 않는 반면, 의료 또는 고가 부품(신뢰성이 중요함)은 자주 테스트된다.
그러나 장치의 기능과 최종 사용자에 따라 모든 매개변수를 테스트할 필요가 있을 수도 있고 없을 수도 있다. 예를 들어, 장치가 의료 또는 인명 구조 제품에 적용되는 경우 많은 매개변수를 테스트해야 하며 일부 매개변수는 보장되어야 한다. 그러나 테스트할 매개변수를 결정하는 것은 비용 대비 수율을 기반으로 하는 복잡한 결정이다. 장치가 수천 개의 게이트가 있는 복잡한 디지털 장치인 경우 테스트 결함 범위가 계산되어야 한다. 여기서도 장치의 주파수, I/O 수 및 유형, 최종 사용 애플리케이션을 기반으로 하는 테스트 경제성에 따라 결정이 복잡해진다.
자동 시험 장비 핸들러 또는 프로버 및 장치 테스트 어댑터
ATE는 패키징된 부품(일반적인 IC '칩') 또는 실리콘 웨이퍼에 직접 사용될 수 있다. 패키징된 부품은 핸들러를 사용하여 장치를 맞춤형 인터페이스 보드에 배치하는 반면, 실리콘 웨이퍼는 고정밀 프로브로 직접 테스트된다. ATE 시스템은 핸들러 또는 프로버와 상호 작용하여 DUT를 테스트한다.
ATE 시스템은 일반적으로 "핸들러"라고 불리는 자동 배치 도구와 인터페이스하여 피시험 장치(DUT)를 인터페이스 테스트 어댑터(ITA)에 물리적으로 배치하여 장비로 측정할 수 있도록 한다. 인터페이스 테스트 어댑터(ITA)는 ATE와 피시험 장치(UUT라고도 함) 사이에 전자 연결을 제공하는 장치이지만, ATE와 DUT 사이에 신호를 조정하기 위한 추가 회로를 포함할 수도 있고 DUT를 장착하기 위한 물리적 시설을 가질 수도 있다. 마지막으로, 소켓은 ITA와 DUT 사이의 연결을 연결하는 데 사용된다. 소켓은 생산 현장의 엄격한 요구 사항을 견뎌야 하므로 일반적으로 자주 교체된다.
자동 시험 장비 핸들러 또는 프로버 및 장치 테스트 어댑터
간단한 전기 인터페이스 다이어그램: ATE → ITA → DUT (패키지) ← 핸들러
웨이퍼 기반 ATE는 일반적으로 실리콘 웨이퍼를 가로질러 장치를 테스트하는 프로버라는 장치를 사용한다.
간단한 전기 인터페이스 다이어그램: ATE → 프로버 → 웨이퍼 (DUT)
테스트 시간을 개선하는 한 가지 방법은 여러 장치를 동시에 테스트하는 것이다. ATE 시스템은 이제 ATE 리소스가 각 사이트에서 공유되는 여러 "사이트"를 지원할 수 있다. 일부 리소스는 병렬로 사용할 수 있고, 다른 리소스는 각 DUT에 직렬화되어야 한다.
자동 시험 장비 ATE 프로그래밍
ATE 컴퓨터는 표준 및 독점 응용 프로그래밍 인터페이스(API)를 통해 ATE 장비를 제어하기 위한 추가 명령문을 사용하여 최신 컴퓨터 언어(C, C++, 자바, VEE, 파이썬, LabVIEW 또는 스몰토크)를 사용한다. 또한 Abbreviated Test Language for All Systems (ATLAS)와 같은 일부 전용 컴퓨터 언어도 존재한다. 자동 테스트 장비는 NI의 TestStand와 같은 테스트 실행 엔진을 사용하여 자동화될 수도 있다.
때때로 자동 시험 패턴 생성이 일련의 테스트를 설계하는 데 도움이 되도록 사용된다.
자동 시험 장비 테스트 데이터 (STDF)
반도체 산업에서 사용되는 많은 ATE 플랫폼은 표준 테스트 데이터 형식(STDF)을 사용하여 데이터를 출력한다.
자동 시험 장비 진단
자동 시험 장비 진단은 ATE 시험의 일부로, 고장난 구성 요소를 판별한다. ATE 시험은 두 가지 기본 기능을 수행한다. 첫째는 피시험 장치가 올바르게 작동하는지 여부를 시험하는 것이다. 둘째는 피시험 장치가 올바르게 작동하지 않을 때 그 이유를 진단하는 것이다. 진단 부분은 시험에서 가장 어렵고 비용이 많이 드는 부분일 수 있다. ATE는 고장을 구성 요소의 클러스터 또는 모호성 그룹으로 축소하는 것이 일반적이다. 이러한 모호성 그룹을 줄이는 한 가지 방법은 ATE 시스템에 아날로그 시그니처 분석 테스트를 추가하는 것이다. 진단은 종종 플라잉 프로브 테스트의 도움을 받는다.
자동 시험 장비 테스트 장비 전환
테스트 시스템 구성에 고속 스위칭 시스템을 추가하면 여러 장치를 더 빠르고 비용 효율적으로 테스트할 수 있으며, 테스트 오류와 비용을 모두 줄이도록 설계되었다. 테스트 시스템의 스위칭 구성을 설계하려면 전환할 신호와 수행할 테스트, 그리고 사용 가능한 스위칭 하드웨어 폼 팩터에 대한 이해가 필요하다.
자동 시험 장비 테스트 장비 플랫폼
여러 모듈형 전자 계측 플랫폼이 현재 자동화된 전자 테스트 및 측정 시스템을 구성하는 데 널리 사용되고 있다. 이러한 시스템은 전자 장치 및 서브어셈블리의 입고 검사, 품질 보증 및 생산 테스트에 널리 사용된다. 산업 표준 통신 인터페이스는 외부 PC에서 실행되는 맞춤형 소프트웨어 애플리케이션의 제어 하에 "랙 앤 스택" 또는 섀시/메인프레임 기반 시스템에서 신호 소스와 측정 장비를 연결한다.
자동 시험 장비 테스트 장비 플랫폼
범용 인터페이스 버스(GPIB)는 센서 및 프로그래밍 가능한 장비를 컴퓨터에 연결하는 데 사용되는 IEEE-488(전기전자공학자협회에서 만든 표준) 표준 병렬 인터페이스이다. GPIB는 8MB/s 이상의 데이터 전송이 가능한 디지털 8비트 병렬 통신 인터페이스이다. 24핀 커넥터를 사용하여 최대 14개의 장비를 시스템 컨트롤러에 데이지 체인 방식으로 연결할 수 있다. 이 인터페이스는 장비에 존재하는 가장 일반적인 I/O 인터페이스 중 하나이며 특히 장비 제어 애플리케이션을 위해 설계되었다. IEEE-488 사양은 이 버스를 표준화하고 전기적, 기계적, 기능적 사양을 정의하는 동시에 기본 소프트웨어 통신 규칙도 정의했다. GPIB는 장비 제어를 위한 견고한 연결이 필요한 산업 환경의 애플리케이션에 가장 적합하다.
자동 시험 장비 테스트 장비 플랫폼
원래 GPIB 표준은 1960년대 후반 휴렛 팩커드에서 제조하는 프로그래밍 가능한 장비를 연결하고 제어하기 위해 개발되었다. 디지털 컨트롤러와 프로그래밍 가능한 테스트 장비의 도입으로 다양한 공급업체의 장비와 컨트롤러 간의 통신을 위한 표준 고속 인터페이스가 필요해졌다. 1975년 IEEE는 인터페이싱 시스템의 전기적, 기계적, 기능적 사양을 포함하는 ANSI/IEEE 표준 488-1975, 즉 프로그래밍 가능한 장비용 IEEE 표준 디지털 인터페이스를 발행했다. 이 표준은 1978년(IEEE-488.1)과 1990년(IEEE-488.2)에 개정되었다. IEEE 488.2 사양에는 프로그래밍 가능한 장비용 표준 명령(SCPI)이 포함되어 있으며, 각 장비 클래스가 준수해야 하는 특정 명령을 정의한다. SCPI는 이러한 장비 간의 호환성과 구성 가능성을 보장한다.
IEEE-488 버스는 사용하기 쉽고 다양한 프로그래밍 가능한 장비 및 자극을 활용할 수 있기 때문에 오랫동안 인기를 누렸다. 그러나 대규모 시스템에는 다음과 같은 제한이 있다.
자동 시험 장비 테스트 장비 플랫폼
LXI 표준은 이더넷을 사용하는 계측 및 데이터 획득 시스템을 위한 통신 프로토콜을 정의한다. 이러한 시스템은 저비용의 개방형 표준 LAN(이더넷)을 사용하는 소형 모듈형 장비를 기반으로 한다. LXI 준수 장비는 카드 케이지 아키텍처의 비용 및 폼 팩터 제약 없이 모듈형 장비의 크기 및 통합 이점을 제공한다. 이더넷 통신을 통해 LXI 표준은 상업, 산업, 항공 우주 및 군사 애플리케이션의 광범위한 분야에서 유연한 패키징, 고속 I/O 및 LAN 연결의 표준화된 사용을 가능하게 한다. 모든 LXI 준수 장비에는 비LXI 장비와의 통신을 단순화하기 위한 IVI(Interchangeable Virtual Instrument) 드라이버가 포함되어 있으므로 LXI 준수 장치는 자체적으로 LXI 준수가 아닌 장비(예: GPIB, VXI, PXI 등을 사용하는 장비)와 통신할 수 있다. 이는 장비의 하이브리드 구성을 구축하고 작동하는 것을 단순화한다.
자동 시험 장비 테스트 장비 플랫폼
LXI 장비는 때때로 임베디드 테스트 스크립트 프로세서를 사용하여 테스트 및 측정 애플리케이션을 구성하기 위한 스크립팅을 사용한다. 스크립트 기반 장비는 많은 애플리케이션에 대해 아키텍처 유연성, 향상된 성능 및 낮은 비용을 제공한다. 스크립팅은 LXI 장비의 이점을 향상시키며, LXI는 스크립팅을 가능하게 하고 향상시키는 기능을 제공한다. 계측용 현재 LXI 표준은 장비가 프로그래밍 가능하거나 스크립팅을 구현해야 한다고 요구하지 않지만, LXI 사양의 여러 기능은 프로그래밍 가능한 장비를 예상하고 LXI 준수 장비에서 스크립팅 기능을 향상시키는 유용한 기능을 제공한다.
자동 시험 장비 테스트 장비 플랫폼
VXI 버스 아키텍처는 VME버스를 기반으로 하는 자동화 테스트를 위한 개방형 표준 플랫폼이다. 1987년에 도입된 VXI는 모든 유로카드 폼 팩터를 사용하며 트리거 라인, 로컬 버스 및 측정 애플리케이션에 적합한 기타 기능을 추가한다. VXI 시스템은 다양한 VXI 계측 모듈을 설치할 수 있는 최대 13개의 슬롯이 있는 메인프레임 또는 섀시를 기반으로 한다. 섀시는 또한 섀시 및 포함된 계측기에 필요한 모든 전원 공급 장치 및 냉각 요구 사항을 제공한다. VXI 버스 모듈은 일반적으로 6U 높이이다.
PXI는 데이터 수집 및 실시간 제어 시스템에 특화된 주변 버스이다. 1997년에 도입된 PXI는 CompactPCI 3U 및 6U 폼 팩터를 사용하며 트리거 라인, 로컬 버스 및 측정 애플리케이션에 적합한 기타 기능을 추가한다. PXI 하드웨어 및 소프트웨어 사양은 PXI 시스템즈 얼라이언스에서 개발 및 유지 관리한다. 전 세계 50개 이상의 제조업체가 PXI 하드웨어를 생산한다.