hotchpotch/wikipedia-multilingual-ir-pairs huggingface dataset:
캘리포니아주 대법원 평판
캘리포니아 대법원과 모든 하급 캘리포니아 주 법원은 연방 법원 및 다른 많은 주 법원과는 다른 글쓰기 스타일과 인용 시스템을 사용한다. 캘리포니아 인용은 당사자 이름과 사건 보고서 참조 사이에 연도를 표기하는데, 이는 연도를 끝에 표기하는 국가 표준(블루북)과 대조된다. 예를 들어, 사실혼 관계 파트너의 기여에 대한 소송 기준을 확립한 유명한 사건인 마빈 대 마빈 사건은 캘리포니아 스타일로 Marvin v. Marvin (1976) 18 Cal.3d 660 [134 Cal.Rptr. 815, 557 P.2d 106]으로 표기되지만, 블루북 스타일로는 Marvin v. Marvin, 18 Cal. 3d 660, 557 P.2d 106, 134 Cal. Rptr. 815 (1976)로 표기된다. 그러나 캘리포니아 인용 스타일은 영국, 캐나다, 호주를 포함한 미국 이외의 관습법 관할권에서는 항상 일반적인 기준이었다.
캘리포니아주 대법원 평판
미국 대법원 대법관들은 의견 시작 부분에 의견 작성자와 의견에 "동의한" 사람을 표시하는 반면, 캘리포니아 대법관들은 항상 다수 의견 끝에 서명하고 "우리는 동의한다"는 문구와 함께 동의한 대법관들의 이름을 나열한다. 캘리포니아 판사들은 전통적으로 의견에 특정 비문법적 용어를 사용하지 않아야 하는데, 이는 판사들과 주 공식 보고관 편집자들 사이에 당황스러운 논쟁을 야기했다. 캘리포니아는 전통적으로 en banc, certiorari, mandamus와 같은 특정 프랑스어 및 라틴어 구절 사용을 피하므로, 캘리포니아 판사 및 변호사들은 대신 "in bank", "review", "mandate"를 사용한다(비록 "in bank"는 1974년 이후 매우 드물게 사용되게 되었지만).
마지막으로, 대법원은 항소법원의 의견을 "출판 취소"할 권한이 있다(연방 법원의 특정 "미출판" 의견을 연방 사건 보고서에 전혀 출판하지 않는 관행과 대조적). 이는 해당 의견이 이미 공식 주 보고서에 출판되었더라도, 오직 당사자들에게만 구속력을 가질 것이라는 의미이다. 선례구속의 원칙은 적용되지 않으며, 명시된 새로운 규칙은 향후 사건에 적용되지 않는다. 마찬가지로, 캘리포니아 대법원은 처음에는 공개되지 않았던 캘리포니아 항소법원의 의견을 "공개"할 권한도 가지고 있다.
캘리포니아주 대법원 중요 판례
캘리포니아 대법원은 1850년 이래로 중요하고 영향력 있는 판결들을 내놓았다. 다음은 연대순으로 나열된 가장 중요하고 영향력 있는 대법원 판결 중 일부이다. 다음 대법원 판결 중 대부분은 미국 또는 세계에서 최초로 내려진 중요한 판결들이었다.
피플 대 홀 (1854): 백인 남성이 중국인 살인 혐의로 기소되었더라도 중국인이 백인 남성에게 불리한 증언을 할 수 없다고 판결한 사건; 1873년 주법에 의해 사실상 폐기되었다. 홀 사건은 "캘리포니아 항소법원 판결 기록에서 찾을 수 있는 가장 공격적인 인종차별적 수사"와 "역사상 최악의 법령 해석 사건"으로 묘사된다.
피플 대 앤더슨 (1972): 대법원은 "잔인하거나 비정상적인 처벌"을 금지하는 주 헌법 조항(연방 헌법의 "잔인하고 비정상적인 처벌" 조항과의 차이점에 유의)에 의존하여 캘리포니아에서 사형을 폐지했다. 주 유권자들은 그 해에 국민 발안인 주민 발의안 17호를 제정하여 앤더슨 판결을 즉시 뒤집었으며, 이는 "잔인하거나 비정상적인" 조항은 유지하되 사형은 잔인하거나 비정상적이지 않다고 선언했다.
캘리포니아주 대법원 중요 판례
타라소프 대 캘리포니아 대학교 리젠츠 (1976): 대법원은 정신 건강 전문가들이 환자에 의해 신체적 해를 입을 위험에 처한 개인을 보호할 의무가 있다고 판결했다. 1974년의 원심 판결은 위협을 받는 개인에게 경고할 것을 명령했지만, 1976년의 재심에서는 잠재적 피해자에게 위협을 반드시 알릴 필요는 없는 "보호 의무"를 요구하는 판결이 나왔다.
마빈 대 마빈 사건 (1976): 대법원은 비혼 관계 계약이 순전히 영리적 성적 서비스에 기반하지 않는 한, 명시적이든 묵시적이든 그 집행 가능성을 지지하는 판결을 내렸다. 다시 말해, 캘리포니아는 사실혼을 인정하지 않지만, 장기간 동거하며 재산을 혼합한 사람들은 부양 및 재산 분할에 대한 혼인과 유사한 계약을 주장하고 증명할 수 있다.
싱 대 라 추사 (1989): 대법원은 딜런 사건에서 제시된 확장된 NIED 형태에서 벗어나, 방관자 NIED 사건에서 배상을 위한 엄격한 명확한 기준을 부과했다. 싱 판결에는 원고에게 적대적인 광범위한 판례 외의 의견이 포함되어 있었는데, 이는 캘리포니아에서 과실 불법 행위와 정신적 고통 손해 배상의 범위를 더욱 일반적으로 제한했다.
캘리포니아주 대법원 중요 판례
실리콘 밸리 납세자 협회, Inc. 대 산타클라라 카운티 오픈 스페이스 관리청 (2008): 대법원은 주민 발의안 218호 ("세금에 대한 투표권 법") 사건에서 지방 기관의 특별 평가 채택에 대한 입법 결정을 검토할 때 법원이 독립적인 판단을 행사해야 한다고 만장일치로 판결했다. 주민 발의안 218호가 법이 되기 전의 매우 우대적인 검토 기준은 권력 분립에 기반을 두고 있었다. 주민 발의안 218호의 헌법 조항이 권력 분립 원칙과 동등한 효력을 가졌기 때문에, 더 이상 지방 기관이 주민 발의안 218호에 따른 평가를 규율하는 헌법 조항을 해석하고 적용하는 사법 기능을 찬탈하는 것을 정당화하지 못했다.
포트 멀티플라이어
직렬 ATA 포트 멀티플라이어(Port multiplier, SATA PM)는 여러 개의 SATA 장치를 하나의 SATA 호스트 포트에 연결할 수 있도록 하는 장치이다. 많은 일반 컨트롤러는 SATA 컨트롤러의 필수 요구 사항이 아니므로 이 기능을 지원하지 않는다.
포트 멀티플라이어 장점
포트 멀티플라이어는 다음과 같은 잠재적 이점을 가진다:
포트 멀티플라이어 포트 증배
직렬 ATA 포트 멀티플라이어는 단방향 분할 장치이다. 하나의 장착된 포트에 최대 15개의 디스크를 연결할 수 있지만, 사용 가능한 대역폭은 컨트롤러와의 링크 대역폭(2012년 기준 1.5, 3 또는 6 Gbit/s)으로 제한된다. 컨트롤러는 여러 드라이브가 연결되어 있음을 인식하지만, 서비스는 연결된 디스크에 투명하게 제공된다. 드라이브는 컨트롤러와 직접 통신한다고 생각하므로 SATA 표준을 준수하는 모든 드라이브를 포트 멀티플라이어에 연결할 수 있다. 포트 멀티플라이어를 구동하는 두 가지 방법이 있다:
이 시스템은 자동화된 기계식 A/B 스위치로 생각할 수 있다. 컨트롤러는 한 번에 하나의 디스크에만 명령을 발행할 수 있으며, 현재 트랜잭션에 대한 명령 큐가 완료될 때까지 다른 디스크에 명령을 발행할 수 없다. 이는 NCQ의 사용을 방해하기도 한다. 즉, 링크의 전체 대역폭이 대부분 사용되지 않을 것임을 의미한다. 따라서 이러한 종류의 전환은 성능보다는 용량이 주요 관심사일 때 사용된다.
포트 멀티플라이어 포트 증배
FIS 기반 전환은 USB 허브와 유사하다. 이 전환 방식에서는 호스트 컨트롤러가 언제든지 임의의 드라이브로부터 데이터를 송수신하는 명령을 발행할 수 있다. 균형 조정 알고리즘은 각 드라이브에 사용 가능한 대역폭의 공정한 할당을 보장한다. FIS 기반 전환은 호스트 링크의 집합적 포화를 허용하며 NCQ를 방해하지 않는다.
포트 멀티플라이어 성능
포트 멀티플라이어를 사용하여 단일 SATA 호스트 포트에 최대 15개의 장치를 연결할 수 있다. 총 대역폭은 여전히 단일 SATA 포트의 대역폭으로 제한된다.
포트 멀티플라이어 신뢰성
연결된 드라이브의 가용성이 문제되는 시나리오에서 포트 멀티플라이어를 사용할 경우, 단일 드라이브의 고장으로 인해 호스트 포트가 잠겨 해당 포트를 통해 연결된 모든 드라이브에 대한 접근이 방해되거나 심각하게 저하될 수 있어 전반적인 신뢰성에 심각한 영향을 미칠 수 있다.
러시아의 탐험가 목록
러시아 연방, 소련, 러시아 제국, 러시아 차르국 및 기타 러시아 전신 국가의 시민 또는 신민에 의한 탐험의 역사는 러시아의 역사뿐만 아니라 세계사에서도 중요한 부분을 차지한다. 세계에서 가장 큰 국가인 러시아는 17,075,400 제곱킬로미터 (6,592,850 mi2)로 지구 육지 면적의 9분의 1 이상을 차지한다. 소련과 러시아 제국 시대에는 세계 육지 면적에서 차지하는 국가의 비중이 6분의 1에 달했다. 이 영토의 대부분은 러시아 탐험가들이 처음 발견했다(거주 지역의 원주민은 제외). 유라시아의 연속적인 탐험과 러시아령 아메리카의 해외 식민지 건설은 러시아 영토 확장의 주요 요인 중 일부였다.
알래스카주, 중앙아시아, 시베리아, 북극점 주변의 북극 지역에서 발견한 것 외에도, 러시아 탐험가들은 남극 지역, 북극, 태평양 섬 탐험은 물론 심해 및 우주 탐험에도 중요한 기여를 했다.
재구성 가능 컴퓨팅
재구성 가능 컴퓨팅(Reconfigurable computing)은 필드 프로그래머블 게이트 어레이(FPGA)와 같은 유연한 하드웨어 플랫폼을 사용하여 처리함으로써 소프트웨어의 유연성과 하드웨어의 고성능을 결합한 컴퓨터 구조이다. 일반 마이크로프로세서를 사용하는 것과의 주요 차이점은 FPGA를 사용하여 사용자 정의 계산 블록을 추가할 수 있다는 점이다. 반면, 맞춤형 하드웨어, 즉 주문형 반도체와의 주요 차이점은 재구성 가능한 패브릭에 새로운 회로를 "로딩"하여 런타임 중에 하드웨어를 조정할 수 있다는 점이다. 따라서 기존 시스템에 새로운 칩을 제조하고 추가할 필요 없이 새로운 계산 블록을 제공한다.
재구성 가능 컴퓨팅 역사
재구성 가능 컴퓨팅의 개념은 1960년대 제럴드 에스트린의 논문에서 표준 프로세서와 "재구성 가능한" 하드웨어 배열로 구성된 컴퓨터 개념을 제안하면서부터 존재했다. 메인 프로세서는 재구성 가능한 하드웨어의 동작을 제어한다. 후자는 영상 처리 또는 패턴 매칭과 같은 특정 작업을 전용 하드웨어만큼 빠르게 수행하도록 맞춤 제작될 수 있었다. 작업이 완료되면 하드웨어는 다른 작업을 수행하도록 조정될 수 있었다. 이로 인해 소프트웨어의 유연성과 하드웨어의 속도를 결합한 하이브리드 컴퓨터 구조가 탄생했다.
재구성 가능 컴퓨팅 역사
1980년대와 1990년대에는 이 연구 분야에서 많은 제안된 재구성 가능한 아키텍처가 산업 및 학계에서 개발되면서 르네상스가 일어났다. 예를 들어 Copacobana, Matrix, GARP, Elixent, NGEN, Polyp, MereGen, PACT XPP, Silicon Hive, Montium, Pleiades, Morphosys, PiCoGA 등이 있다. 이러한 설계는 복잡한 설계를 하나의 칩에 구현할 수 있게 해준 실리콘 기술의 지속적인 발전 덕분에 가능했다. 이러한 대규모 병렬 재구성 가능 컴퓨터 중 일부는 주로 분자 진화, 신경 또는 영상 처리와 같은 특수 하위 도메인을 위해 제작되었다. 세계 최초의 상업용 재구성 가능 컴퓨터인 Algotronix CHS2X4는 1991년에 완성되었다. 이는 상업적인 성공을 거두지는 못했지만, 필드 프로그래머블 게이트 어레이(FPGA)의 발명사인 자일링스가 이 기술을 인수하고 Algotronix 직원을 고용할 만큼 유망했다. 이후 기계들은 MereGen을 사용한 유전자 코딩의 자발적인 공간 자기 조직화와 같은 과학적 원리의 첫 시연을 가능하게 했다.
재구성 가능 컴퓨팅 이론
재구성 가능 컴퓨팅 기계 패러다임의 근본적인 모델인 데이터 스트림 기반 안티 머신은 닉 트레데닉의 다음 컴퓨팅 패러다임 분류 체계(표 1: 닉 트레데닉의 패러다임 분류 체계 참조)에 나타난 바와 같이 이전에 도입된 다른 기계 패러다임과의 차이점으로 잘 설명된다.
컴퓨터 과학자 라이너 하텐슈타인은 재구성 가능 컴퓨팅을 안티 머신의 관점에서 설명하는데, 그에 따르면 이것은 보다 일반적인 폰 노이만 머신으로부터 근본적인 패러다임 전환을 나타낸다. 하텐슈타인은 이를 재구성 가능 컴퓨팅 역설이라고 부른다. 소프트웨어에서 컨피그웨어(소프트웨어에서 FPGA)로의 마이그레이션이 최대 4배 이상의 속도 향상과 거의 4배에 달하는 전력 소비 감소를 가져온다고 보고된다. 이는 FPGA의 기술적 파라미터가 고든 무어 곡선보다 약 4배 뒤처져 있고, 클럭 주파수도 마이크로프로세서보다 현저히 낮음에도 불구하고 발생한다. 이 역설은 부분적으로 폰 노이만 증후군으로 설명된다.
재구성 가능 컴퓨팅 고성능 컴퓨팅
고성능 재구성 가능 컴퓨팅(HPRC)은 컴퓨터 구조로, 필드 프로그래머블 게이트 어레이와 같은 재구성 가능 컴퓨팅 기반 가속기를 CPU 또는 멀티 코어 마이크로프로세서와 결합한다.
FPGA의 논리 증가로 더 크고 복잡한 알고리즘을 FPGA에 프로그래밍할 수 있게 되었다. 이러한 FPGA를 PCI 익스프레스와 같은 고속 버스를 통해 최신 CPU에 연결하면 구성 가능한 논리가 주변기기보다는 코프로세서처럼 작동할 수 있게 되었다. 이로 인해 재구성 가능 컴퓨팅이 고성능 컴퓨팅 영역으로 들어서게 되었다.
더 나아가, FPGA에 알고리즘을 복제하거나 다수의 FPGA를 사용함으로써 여러 계산 장치가 다른 데이터를 동시에 처리할 수 있는 재구성 가능한 SIMD 시스템을 생산할 수 있게 되었으며, 이는 병렬 컴퓨팅에 매우 적합하다.
재구성 가능 컴퓨팅 고성능 컴퓨팅
이러한 이종 시스템 기술은 컴퓨팅 연구, 특히 슈퍼컴퓨팅에서 사용된다.
2008년 논문은 4배 이상의 속도 향상 요인과 거의 4배에 달하는 에너지 절약 요인을 보고했다.
일부 슈퍼컴퓨터 기업은 FPGA를 가속기로 포함하는 이종 처리 블록을 제공한다.
한 연구 분야는 이러한 이종 시스템에 대해 얻어진 트윈 패러다임 프로그래밍 도구 흐름 생산성이다.
미국 미국 국립과학재단은 고성능 재구성 가능 컴퓨팅 센터(CHREC)를 운영하고 있다.
2011년 4월에는 유럽에서 제4회 매니코어 및 재구성 가능 슈퍼컴퓨팅 컨퍼런스가 개최되었다.
IBM이 FPGA를 IBM 파워 마이크로프로세서에 통합한다고 발표하면서 상업용 고성능 재구성 가능 컴퓨팅 시스템이 등장하기 시작했다.
재구성 가능 컴퓨팅 부분 재구성
부분 재구성은 재구성 가능한 하드웨어 회로의 일부를 변경하는 동안 다른 부분은 이전 구성을 유지하는 과정이다. 필드 프로그래머블 게이트 어레이는 종종 부분 재구성의 지원으로 사용된다.
전자 하드웨어는 소프트웨어와 마찬가지로 하위 구성 요소를 만들고 상위 수준 구성 요소를 만들어 인스턴스화함으로써 모듈식으로 설계될 수 있다. 많은 경우 FPGA가 여전히 작동하는 동안 이러한 하위 구성 요소 중 하나 또는 여러 개를 교체할 수 있는 것이 유용하다.
일반적으로 FPGA를 재구성하려면 외부 컨트롤러가 FPGA에 설계를 다시 로드하는 동안 재설정 상태로 유지해야 한다. 부분 재구성은 FPGA 또는 외부의 컨트롤러가 재구성 가능한 모듈에 부분 설계를 로드하는 동안 설계의 중요한 부분이 계속 작동하도록 허용한다. 부분 재구성은 또한 설계 간에 변경되는 부분 설계만 저장함으로써 여러 설계에 대한 공간을 절약하는 데 사용될 수도 있다.
재구성 가능 컴퓨팅 부분 재구성
부분 재구성이 유용할 수 있는 일반적인 예는 통신 장치의 경우이다. 장치가 여러 연결을 제어하고 그 중 일부에 암호화가 필요한 경우, 전체 컨트롤러를 중단시키지 않고도 다른 암호화 코어를 로드할 수 있는 것이 유용할 것이다.
부분 재구성은 모든 FPGA에서 지원되지 않는다. 모듈식 설계에 중점을 둔 특수 소프트웨어 흐름이 필요하다. 일반적으로 설계 모듈은 FPGA 내에서 잘 정의된 경계를 따라 구축되며, 이는 설계를 내부 하드웨어에 특별히 매핑해야 한다.
설계의 기능에 따라 부분 재구성은 두 가지 그룹으로 나눌 수 있다.
재구성 가능 컴퓨팅 현재 시스템
저렴한 FPGA 보드의 등장으로 학생 및 취미 활동 프로젝트에서 빈티지 컴퓨터를 재현하거나 더 새로운 아키텍처를 구현하려는 시도가 이루어지고 있다. 이러한 프로젝트는 재구성 가능한 하드웨어(FPGA)로 구축되며, 일부 장치는 단일 재구성 가능한 하드웨어(C-One)를 사용하여 여러 빈티지 컴퓨터의 에뮬레이션을 지원한다.
완전한 FPGA 기반 컴퓨터는 비용 최적화 코드 브레이커 및 분석기인 COPACOBANA와 그 후속작인 RIVYERA이다. 독일 보훔 및 킬 대학교의 COPACOBANA 프로젝트의 스핀오프 회사인 SciEngines GmbH는 완전한 FPGA 기반 컴퓨터 개발을 계속하고 있다.
미트리오닉스는 단일 할당 언어로 작성된 소프트웨어를 FPGA 기반 컴퓨터에서 컴파일하고 실행할 수 있도록 하는 SDK를 개발했다. 미트리온-C 소프트웨어 언어와 미트리온 프로세서를 통해 소프트웨어 개발자는 GPU(그래픽 처리 장치), 셀 기반 프로세서, PPU(병렬 처리 장치), 멀티코어 CPU, 전통적인 싱글코어 CPU 클러스터와 같은 다른 컴퓨팅 기술과 동일한 방식으로 FPGA 기반 컴퓨터에서 애플리케이션을 작성하고 실행할 수 있다. (사업 종료)
재구성 가능 컴퓨팅 현재 시스템
내셔널 인스트루먼츠는 CompactRIO라는 하이브리드 임베디드 컴퓨팅 시스템을 개발했다. 이 시스템은 사용자 프로그래밍 가능한 FPGA, 핫 스와핑 가능한 I/O 모듈, 결정론적 통신 및 처리를 위한 실시간 컨트롤러, 빠른 RT 및 FPGA 프로그래밍을 위한 그래픽 LabVIEW 소프트웨어를 수용하는 재구성 가능한 섀시로 구성된다.
자일링스는 FPGA 장치의 부분 재구성 두 가지 방식인 모듈 기반 및 차이 기반을 개발했다. 모듈 기반 부분 재구성은 설계의 개별 모듈 부분을 재구성할 수 있도록 허용하는 반면, 차이 기반 부분 재구성은 설계에 작은 변경이 이루어질 때 사용될 수 있다.
인텔은 Stratix V와 같은 28나노미터 장치 및 20나노미터 Arria 10 장치에서 FPGA 장치의 부분 재구성을 지원한다. Arria 10을 위한 인텔 FPGA 부분 재구성 흐름은 Quartus Prime Pro 소프트웨어의 계층적 설계 방법론을 기반으로 하며, 사용자는 런타임에 재구성할 수 있는 FPGA의 물리적 파티션을 생성하고 나머지 설계는 계속 작동한다. Quartus Prime Pro 소프트웨어는 또한 계층적 부분 재구성 및 부분 재구성 시뮬레이션을 지원한다.
재구성 가능 컴퓨팅 시스템 분류
새로운 아키텍처가 개발됨에 따라 재구성 가능한 아키텍처의 분류는 여전히 개발되고 개선되고 있으며, 현재까지 통일된 분류법은 제안되지 않았다. 그러나 이러한 시스템을 분류하는 데 사용할 수 있는 몇 가지 반복되는 매개변수가 있다.
재구성 가능한 논리의 세분성은 매핑 도구에서 다루는 가장 작은 기능 단위(구성 가능한 논리 블록, CLB)의 크기로 정의된다. 높은 세분성, 즉 미세 세분성은 하드웨어에 알고리즘을 구현할 때 더 큰 유연성을 의미한다. 그러나 이는 계산당 더 많은 라우팅이 필요하므로 전력, 면적, 지연 측면에서 불이익이 따른다. 미세 세분 아키텍처는 비트 수준 조작 수준에서 작동하며, 거친 세분 처리 요소(재구성 가능한 데이터 경로 장치, rDPU)는 표준 데이터 경로 애플리케이션에 더 최적화되어 있다. 거친 세분 아키텍처의 단점 중 하나는 세분성이 제공하는 것보다 작은 계산을 수행해야 할 경우 활용도와 성능이 저하되는 경향이 있다는 것이다. 예를 들어, 4비트 폭의 기능 단위에서 1비트 추가를 수행하면 3비트가 낭비된다. 이 문제는 거친 세분 배열(재구성 가능한 데이터 경로 배열, rDPA)과 FPGA를 동일한 칩에 두어 해결할 수 있다.
재구성 가능 컴퓨팅 시스템 분류
거친 세분 아키텍처(rDPA)는 워드 폭 데이터 경로(rDPU)가 필요한 알고리즘의 구현을 위한 것이다. 이들의 기능 블록은 큰 계산에 최적화되어 있으며 일반적으로 워드 폭 산술 논리 장치(ALU)를 포함하므로, 상호 연결된 더 작은 기능 단위 세트보다 더 빠르고 전력 효율적으로 이러한 계산을 수행할 것이다. 이는 연결 전선이 더 짧아 와이어 커패시턴스가 적고 따라서 더 빠르고 저전력 설계가 가능하기 때문이다. 더 큰 계산 블록을 갖는 잠재적인 바람직하지 않은 결과는 피연산자의 크기가 알고리즘과 일치하지 않을 때 자원의 비효율적인 활용이 발생할 수 있다는 것이다. 종종 실행될 애플리케이션의 유형이 미리 알려져 있어 논리, 메모리 및 라우팅 자원을 조정하여 장치의 성능을 향상시키면서도 향후 적응을 위한 특정 수준의 유연성을 제공할 수 있다. 이의 예로는 유연성을 줄여 더 일반적인 미세 세분 FPGA 사촌보다 전력, 면적, 처리량 측면에서 더 나은 성능을 얻는 것을 목표로 하는 도메인 특정 배열이 있다.
재구성 가능 컴퓨팅 시스템 분류
이러한 재구성 가능한 시스템의 구성은 배포 시점, 실행 단계 사이 또는 실행 중에 발생할 수 있다. 일반적인 재구성 가능한 시스템에서는 비트 스트림이 배포 시점에 장치를 프로그래밍하는 데 사용된다. 미세 세분 시스템은 더 많은 요소가 처리되고 프로그래밍되어야 하므로 본질적으로 더 거친 세분 아키텍처보다 더 많은 구성 시간이 필요하다. 따라서 더 거친 세분 아키텍처는 잠재적으로 더 낮은 에너지 요구 사항의 이점을 얻을 수 있다. 정보가 덜 전송되고 활용되기 때문이다. 직관적으로 재구성 속도가 느릴수록 재구성의 관련 에너지 비용이 더 긴 기간에 걸쳐 상쇄되므로 전력 소비가 더 작아진다. 부분 재구성은 장치의 일부가 재프로그래밍되는 동안 다른 부분은 여전히 활성 계산을 수행할 수 있도록 하는 것을 목표로 한다. 부분 재구성을 통해 더 작은 재구성 가능한 비트 스트림이 가능하므로 비트 스트림에서 중복 정보를 전송하는 데 에너지를 낭비하지 않는다. 비트 스트림의 압축이 가능하지만, 더 작은 비트 스트림을 사용하여 절약된 에너지가 데이터를 압축하는 데 필요한 계산량보다 크지 않도록 신중한 분석을 수행해야 한다.
재구성 가능 컴퓨팅 시스템 분류
재구성 가능한 배열은 종종 호스트 프로세서에 연결된 처리 가속기로 사용된다. 결합 수준은 재구성 가능한 논리를 활용할 때 관련된 데이터 전송 유형, 대기 시간, 전력, 처리량 및 오버헤드를 결정한다. 가장 직관적인 설계 중 일부는 주변 버스를 사용하여 재구성 가능한 배열에 코프로세서와 같은 배열을 제공한다. 그러나 재구성 가능한 패브릭이 프로세서에 훨씬 더 가까운 구현도 있었으며, 일부는 프로세서 레지스터를 활용하여 데이터 경로에 구현되기도 한다. 호스트 프로세서의 역할은 제어 기능을 수행하고, 논리를 구성하고, 데이터를 스케줄링하고, 외부 인터페이스를 제공하는 것이다.
재구성 가능한 장치의 유연성은 주로 라우팅 상호 연결에서 비롯된다. FPGA 공급업체인 자일링스와 알테라가 대중화한 상호 연결 방식 중 하나는 블록이 수직 및 수평 라우팅과 함께 배열로 배열되는 아일랜드 스타일 레이아웃이다. 부적절한 라우팅이 있는 레이아웃은 유연성이 떨어지고 자원 활용도가 낮아 성능이 제한될 수 있다. 너무 많은 상호 연결이 제공되면 필요 이상의 트랜지스터가 필요하므로 더 많은 실리콘 면적, 더 긴 와이어 및 더 많은 전력 소비가 발생한다.
재구성 가능 컴퓨팅 운영 체제의 과제
재구성 가능 컴퓨팅의 주요 과제 중 하나는 더 높은 설계 생산성을 가능하게 하고 기본 개념에 익숙하지 않은 사용자에게 재구성 가능 컴퓨팅 시스템을 더 쉽게 사용할 수 있는 방법을 제공하는 것이다. 이를 달성하는 한 가지 방법은 일반적으로 운영 체제에 의해 지원되고 강제되는 표준화 및 추상화를 제공하는 것이다.
운영 체제의 주요 작업 중 하나는 하드웨어를 숨기고 프로그램(및 프로그래머)에게 멋지고 깨끗하며 우아하고 일관된 추상화를 제공하여 작업할 수 있도록 하는 것이다. 즉, 운영 체제의 두 가지 주요 작업은 추상화와 자원 관리이다.
추상화는 복잡하고 다양한 (하드웨어) 작업을 잘 정의되고 공통된 방식으로 처리하는 강력한 메커니즘이다. 가장 기본적인 OS 추상화 중 하나는 프로세스이다. 프로세스는 운영 체제가 제공하는 인식에 따라 기본 가상 하드웨어에서 자체적으로 실행되는 실행 중인 애플리케이션이다. 이는 스레드 개념을 통해 완화될 수 있으며, 다른 작업이 이 가상 하드웨어에서 동시에 실행되어 작업 수준 병렬성을 활용할 수 있도록 허용한다. 다른 프로세스와 스레드가 작업을 조정할 수 있도록 OS는 통신 및 동기화 방법을 제공해야 한다.
재구성 가능 컴퓨팅 운영 체제의 과제
추상화 외에도 기본 하드웨어 구성 요소의 자원 관리가 필요하다. 운영 체제가 프로세스와 스레드에 제공하는 가상 컴퓨터가 사용 가능한 물리적 자원(프로세서, 메모리 및 장치)을 공간적으로나 시간적으로 공유해야 하기 때문이다.
재구성 가능 컴퓨팅 더 읽어보기
T.J. Todman, G.A. Constantinides, S.J.E. Wilton, O. Mencer, W. Luk and P.Y.K. Cheung, "Reconfigurable Computing: Architectures and Design Methods", IEEE Proceedings: Computer & Digital Techniques, Vol. 152, No. 2, March 2005, pp. 193–208.
J. M. Arnold and D. A. Buell, "VHDL programming on Splash 2," in More FPGAs, Will Moore and Wayne Luk, editors, Abingdon EE & CS Books, Oxford, England, 1994, pp. 182–191. (Proceedings, International Workshop on Field-Programmable Logic, Oxford, 1993.)
재구성 가능 컴퓨팅 더 읽어보기
J. M. Arnold, D. A. Buell, D. Hoang, D. V. Pryor, N. Shirazi, M. R. Thistle, "Splash 2 and its applications, "Proceedings, International Conference on Computer Design, Cambridge, 1993, pp. 482–486.
베릴로그-AMS
베릴로그-AMS(Verilog-AMS)는 아날로그 및 혼합 신호 시스템의 동작을 정의하기 위해 아날로그 및 혼합 신호 확장(AMS)을 포함하는 베릴로그 하드웨어 기술 언어의 파생 언어이다. 이는 베릴로그/시스템베릴로그/VHDL의 이벤트 기반 시뮬레이터 루프를 연속 시간 시뮬레이터로 확장하며, 이는 아날로그 도메인의 미분방정식을 해결한다. 두 도메인은 서로 연결되어 있어, 아날로그 이벤트가 디지털 동작을 유발할 수 있고 그 반대도 가능하다.
베릴로그-AMS 개요
베릴로그-AMS 표준은 아날로그 및 혼합 신호 시스템 및 집적 회로 설계자들이 시스템 및 구성 요소의 고수준 행동 설명뿐만 아니라 구조적 설명을 캡슐화하는 모듈을 생성하고 사용할 수 있도록 의도적으로 만들어졌다.
베릴로그-AMS는 혼합 신호 회로를 위한 산업 표준 모델링 언어이다. 이는 연속 시간 및 이벤트 기반 모델링 의미론을 모두 제공하므로 아날로그, 디지털 및 혼합 아날로그/디지털 회로에 적합하다. 특히 매우 복잡한 아날로그, 혼합 신호 및 RF 집적 회로의 검증에 적합하다.
베릴로그와 베릴로그/AMS는 절차적 프로그래밍 언어가 아니라 이벤트 기반 하드웨어 기술 언어(HDL)이다. 따라서 이들은 병렬 동작 및 이벤트의 정의 및 동기화를 위한 정교하고 강력한 언어 기능을 제공한다. 반면에 HDL 프로그램 문장에 정의된 많은 동작은 병렬로 실행될 수 있다 (절차적 언어의 스레드 및 태스크와 다소 유사하지만 훨씬 세분화되어 있다). 그러나 베릴로그/AMS는 시뮬레이터의 베릴로그 절차적 인터페이스를 사용하여 ANSI C 언어와 같은 절차적 언어와 연결될 수 있어 테스트 스위트 구현을 용이하게 하고 레거시 코드 또는 테스트벤치 장비와의 상호 작용을 허용한다.
베릴로그-AMS 개요
베릴로그-AMS 위원회의 원래 의도는 아날로그 및 디지털 설계를 위한 단일 언어였지만, 통합 과정의 지연으로 인해 베릴로그는 시스템베릴로그로 발전하여 IEEE로 넘어갔고, 베릴로그-AMS는 Accellera에 남아있다.
베릴로그-AMS 코드 예시
베릴로그/AMS는 베릴로그 디지털 HDL의 상위 집합이므로 디지털 도메인의 모든 문은 베릴로그와 동일하게 작동한다(예시는 해당 문서를 참조). 모든 아날로그 부분은 베릴로그-A와 동일하게 작동한다.
다음 베릴로그-AMS 코드 예시는 디지털 신호에 의해 트리거되는 아날로그 처리의 예시인 DAC를 보여준다.
ADC 모델은 디지털 블록에서 아날로그 신호를 읽는다.
베릴로그-AMS 구현
이 언어는 초기에는 상업 회사에서만 지원되었지만, 행동 모델링 하위 집합인 "베릴로그-A"의 일부는 트랜지스터 모델링 커뮤니티에서 채택되었다. ADMS 변환기는 Xyce 및 ngSPICE와 같은 오픈 소스 시뮬레이터를 지원한다. 보다 완전한 구현은 이제 OpenVAF를 통해 사용할 수 있다. 포스트-SPICE 시뮬레이터 Gnucap은 표준 문서에 따라 설계되었으며, 시뮬레이터 수준과 행동 모델링 모두에 대한 베릴로그-AMS 지원이 증가하고 있다.
SystemC
SystemC는 C++ 클래스 및 매크로 세트로, 사건 기반 시뮬레이션 인터페이스를 제공한다(또한 이산 사건 시뮬레이션 참조). 이러한 기능을 통해 설계자는 일반 C++ 구문을 사용하여 설명된 동시적 프로세스를 시뮬레이션할 수 있다. SystemC 프로세스는 시뮬레이션된 실시간 환경에서 C++가 제공하는 모든 자료형과 SystemC 라이브러리가 제공하는 추가 데이터 유형은 물론 사용자 정의 데이터 유형의 신호를 사용하여 통신할 수 있다. 어떤 면에서 SystemC는 하드웨어 기술 언어인 VHDL 및 베릴로그를 의도적으로 모방하지만, 시스템 수준 모델링 언어로 더 적합하게 설명된다.
SystemC는 시스템 수준 모델링, 아키텍처 탐색, 성능 모델링, 소프트웨어 개발, 기능 검증, 상위 수준 합성에 적용된다. SystemC는 종종 전자 시스템 수준 (ESL) 설계 및 트랜잭션 수준 모델링 (TLM)과 관련이 있다.
SystemC 언어 사양
SystemC는 Open SystemC Initiative (OSCI — 현재 Accellera)에 의해 정의되고 홍보되었으며, IEEE 표준 협회에 의해 IEEE 1666-2011 – SystemC 언어 참조 설명서(LRM)로 승인되었다. LRM은 SystemC의 의미론에 대한 명확한 설명을 제공한다. OSCI는 또한 오픈 소스 개념 증명 시뮬레이터(때때로 참조 시뮬레이터로 잘못 언급되기도 함)를 제공하며, 이는 OSCI 웹사이트에서 다운로드할 수 있다. OSCI의 의도는 상업 공급업체와 학계가 IEEE 1666을 준수하는 독창적인 소프트웨어를 만들 수 있도록 하는 것이었지만, 실제로 대부분의 SystemC 구현은 적어도 부분적으로 OSCI 개념 증명 시뮬레이터를 기반으로 했다.
SystemC 언어 사양
SystemC는 VHDL 및 베릴로그와 의미론적 유사성을 가지지만, 하드웨어 기술 언어로 사용될 때 이들에 비해 구문적 오버헤드가 있다고 할 수 있다. 반면에, 객체 지향 설계 분할 및 템플릿 클래스와 유사하게 더 넓은 범위의 표현을 제공한다. 엄격히 C++ 클래스 라이브러리임에도 불구하고, SystemC는 때때로 그 자체의 언어로 간주되기도 한다. 소스 코드는 SystemC 라이브러리(시뮬레이션 커널 포함)와 함께 컴파일되어 실행 파일을 생성한다. OSCI 오픈 소스 구현의 성능은 레지스터 전송 레벨 시뮬레이션에 사용될 때 일반적으로 상업용 VHDL/베릴로그 시뮬레이터보다 좋지 않다.
SystemC 버전 1에는 구조적 계층 및 연결성, 클록 사이클 정확도, 델타 사이클, 사값 논리 (0, 1, X, Z), 버스 해결 기능과 같은 일반적인 하드웨어 기술 언어 기능이 포함되었다.
SystemC 버전 2부터는 통신 추상화, 트랜잭션 수준 모델링, 가상 플랫폼 모델링에 중점을 두었다. 또한 추상 포트, 동적 프로세스, 시간 지정 이벤트 알림 기능이 추가되었다.
SystemC 언어 기능
SystemC에는 모듈이라는 컨테이너 클래스의 개념이 있다. 이것은 다른 모듈이나 프로세스를 포함할 수 있는 계층적 개체이다.
모듈은 SystemC 설계 계층 구조의 기본 구성 요소이다. SystemC 모델은 일반적으로 포트를 통해 통신하는 여러 모듈로 구성된다. 모듈은 SystemC의 빌딩 블록으로 생각할 수 있다.
포트는 채널을 통해 모듈 내부에서 외부(일반적으로 다른 모듈로)로 통신을 허용한다.
SystemC는 해결된 신호와 해결되지 않은 신호를 지원한다. 해결된 신호는 둘 이상의 드라이버(버스)를 가질 수 있지만 해결되지 않은 신호는 하나의 드라이버만 가질 수 있다.
모듈은 다른 모듈에 연결되는 포트를 가지고 있다. SystemC는 단방향 및 양방향 포트를 지원한다.
익스포트는 채널을 통합하여 모듈 내부에서 외부(일반적으로 다른 모듈로)로 통신을 허용한다.
SystemC 언어 기능
프로세스는 기능을 설명하는 데 사용된다. 프로세스는 모듈 안에 포함된다. SystemC는 하드웨어 및 소프트웨어 설계자가 사용할 수 있는 세 가지 다른 프로세스 추상화를 제공한다. 프로세스는 주요 계산 요소이다. 이들은 동시적이다.
채널은 SystemC의 통신 요소이다. 이들은 단순한 와이어일 수도 있고 FIFO나 버스 채널과 같은 복잡한 통신 메커니즘일 수도 있다.
기본 채널:
포트는 인터페이스를 사용하여 채널과 통신한다.
이벤트는 프로세스 간의 동기화를 허용하며 초기화 중에 정의되어야 한다.
SystemC는 하드웨어 모델링을 지원하는 여러 데이터 유형을 도입한다.
확장 표준 유형:
논리 유형:
고정 소수점 유형:
SystemC 역사
SystemC는 1997년 DAC 논문에서 설명된 Scenic 프로그래밍 언어 작업에서 유래한다.
ARM Ltd., CoWare, 시높시스 및 CynApps는 SystemC를 개발하기 위해 협력하여 1999년에 첫 번째 초안 버전을 출시했다 (CynApps는 나중에 Forte Design Systems가 되었다). 당시 주요 경쟁자는 UC 어바인 직원과 일부 일본 기업이 개발한 또 다른 C 기반 오픈 소스 패키지인 SpecC였다.
2000년 6월, Open SystemC Initiative라는 표준 그룹이 결성되어 SystemC 활동을 주최하고 시높시스의 가장 큰 경쟁자인 케이던스와 멘토 그래픽스가 SystemC 개발에 민주적인 대표권을 가질 수 있도록 산업 중립적인 조직을 제공했다.
SystemC SystemC에서의 전력 및 에너지 추정
SystemC에서는 시뮬레이션을 통해 전력 및 에너지 추정이 가능하다.
Powersim은 시스템 수준에서 설명된 하드웨어의 전력 및 에너지 소비를 계산하기 위한 SystemC 클래스 라이브러리이다. 이를 위해 C++ 연산자를 모니터링하고 각 SystemC 데이터 유형에 대해 다른 에너지 모델을 사용할 수 있다.
Powersim을 사용한 시뮬레이션은 애플리케이션 소스 코드 변경을 필요로 하지 않는다.
모델심
모델심(ModelSim)은 지멘스 (이전에는 멘토 그래픽스가 개발)에서 VHDL, 베릴로그, SystemC와 같은 하드웨어 기술 언어의 시뮬레이션을 위한 다중 언어 환경이며, 내장 C 디버거를 포함한다. 모델심은 독립적으로 사용하거나 인텔 쿼터스 프라임, PSIM, 자일링스 ISE 또는 자일링스 비바도와 함께 사용할 수 있다. 시뮬레이션은 그래픽 사용자 인터페이스(GUI)를 사용하거나 스크립트를 사용하여 자동으로 수행된다.
모델심 에디션
멘토 HDL 시뮬레이션 제품은 모델심 PE 및 퀘스타 심과 같은 여러 에디션으로 제공된다.
퀘스타 심은 고성능 및 고급 디버깅 기능을 제공하며, 모델심 PE는 아마추어 및 학생을 위한 엔트리 레벨 시뮬레이터이다. 퀘스타 심은 수백만 게이트의 대규모 설계에 사용되며, 마이크로소프트 윈도우 및 리눅스에서 32비트 및 64비트 아키텍처를 지원한다.
모델심은 Link for ModelSim을 사용하여 매트랩/시뮬링크와 함께 사용할 수도 있다. Link for ModelSim은 시뮬링크와 모델심 간의 빠른 양방향 공동 시뮬레이션 인터페이스이다. 이러한 설계를 위해 매트랩은 수치 시뮬레이션 도구 세트를 제공하고, 모델심은 설계의 하드웨어 구현 및 타이밍 특성을 검증하는 도구를 제공한다.
모델심 언어 지원
모델심은 지원되는 모든 언어의 시뮬레이션을 위해 통합 커널을 사용하며, 임베디드 C 코드 디버깅 방법은 VHDL 또는 베릴로그와 동일하다.
모델심 및 퀘스타 심 제품은 다음 언어에 대한 시뮬레이션, 검증 및 디버깅을 지원한다.
니오스 II
니오스 II(Nios II)는 알테라 계열의 필드 프로그래머블 게이트 어레이 (집적 회로)용으로 특별히 설계된 32비트 임베디드 프로세서 아키텍처이다. 니오스 II는 원래 니오스 아키텍처에 비해 많은 개선 사항이 통합되어 디지털 신호 처리(DSP)부터 시스템 제어에 이르는 광범위한 임베디드 컴퓨팅 애플리케이션에 더 적합하다.
니오스 II는 알테라의 첫 번째 구성 가능한 16비트 임베디드 프로세서인 2000년에 출시된 니오스의 후속작이다.
인텔은 2023년에 니오스 II의 단종을 발표했으며, 그 후속작은 RISC-V 아키텍처를 기반으로 하는 니오스 V이다.
니오스 II 주요 기능
원래의 니오스와 마찬가지로 니오스 II 아키텍처는 알테라 FPGA의 프로그래머블 로직 및 메모리 블록에 완전히 구현된 RISC 소프트 코어 아키텍처이다. 이전 버전과 달리 완전한 32비트 설계이다.
니오스 II 프로세서의 소프트 코어 특성 덕분에 시스템 설계자는 특정 애플리케이션 요구 사항에 맞춰 사용자 지정 니오스 II 코어를 지정하고 생성할 수 있다. 시스템 설계자는 미리 정의된 메모리 관리 장치를 추가하거나 사용자 지정 명령어 및 사용자 지정 주변 장치를 정의하여 니오스 II의 기본 기능을 확장할 수 있다.
기본 니오스 II 명령어와 유사하게 사용자 정의 명령어는 최대 두 개의 32-비트 소스 레지스터에서 값을 받아 선택적으로 32비트 대상 레지스터에 결과를 다시 쓴다. 사용자 지정 명령어를 사용함으로써 시스템 설계자는 성능 목표를 충족하도록 시스템 하드웨어를 미세 조정할 수 있으며, 설계자는 C에서 명령어를 매크로로 쉽게 처리할 수 있다.
니오스 II 주요 기능
CPU 사이클 대부분을 특정 코드 섹션 실행에 사용하는 성능에 민감한 시스템의 경우, 사용자 정의 주변 장치가 소프트웨어 알고리즘 실행의 일부 또는 전부를 사용자 정의 하드웨어 논리로 오프로드하여 전력 효율성 또는 애플리케이션 처리량을 향상시킬 수 있다.
쿼터스 8.0과 함께 도입된 선택적 MMU를 통해 니오스 II는 리눅스 커널과 같이 하드웨어 기반 페이징 및 보호를 요구하는 운영 체제를 실행할 수 있다. MMU가 없으면 니오스는 μClinux 및 FreeRTOS와 같이 단순화된 보호 및 가상 메모리 모델을 사용하는 운영 체제로 제한된다.
쿼터스 8.0과 함께 도입된 선택적 MPU는 MMU에서 제공하는 것과 유사한 메모리 보호 기능을 제공하지만, 더 간단한 프로그래밍 모델과 MMU와 관련된 성능 오버헤드가 없다.
니오스 II 니오스 II CPU 제품군
니오스 II 클래식은 니오스 II/f (고속), 니오스 II/s (표준), 니오스 II/e (절전)의 3가지 구성으로 제공된다.
니오스 II gen2는 니오스 II/f (고속) 및 니오스 II/e (절전)의 2가지 구성으로 제공된다.
니오스 II/f 코어는 코어 크기를 희생하면서도 최대 성능을 위해 설계되었다. 니오스 II/f의 기능은 다음과 같다.
니오스 II/s 코어는 성능과 비용 간의 균형을 유지하도록 설계되었다. 이 코어 구현은 알테라 쿼터스 II v.17 이상에서는 더 이상 지원되지 않는다. 니오스 II/s의 기능은 다음과 같다.
니오스 II/e 코어는 FPGA의 가능한 가장 작은 논리 활용을 위해 설계되었다. 이는 저비용 사이클론 II FPGA 애플리케이션에 특히 효율적이다. 니오스 II/e의 기능은 다음과 같다.
니오스 II 아발론 스위치 패브릭 인터페이스
니오스 II는 아발론 스위치 패브릭을 임베디드 주변 장치에 대한 인터페이스로 사용한다. 프로세서 기반 시스템의 전통적인 버스는 한 번에 하나의 버스 마스터만 버스에 액세스할 수 있도록 하는 반면, 아발론 스위치 패브릭은 슬레이브 측 중재 방식을 사용하여 여러 마스터가 동시에 작동할 수 있도록 한다.
니오스 II 개발 프로세스
니오스 II 개발은 하드웨어 생성과 소프트웨어 생성이라는 두 가지 별도의 단계로 구성된다.
개발은 알테라 애플리케이션인 EDS(Embedded Design Suite) 내에서 호스팅된다. EDS는 두 가지 별도의 단계에서 하드웨어와 소프트웨어를 모두 관리하는 완전한 통합 개발 환경을 포함한다.
니오스 II 하드웨어 설계자는 쿼터스 II 패키지의 구성 요소인 Qsys 시스템 통합 도구를 사용하여 니오스 시스템을 구성하고 생성한다. 구성 그래픽 사용자 인터페이스(GUI)를 통해 사용자는 니오스 II의 기능 집합을 선택하고 주변 장치 및 I/O 블록(타이머, 메모리 컨트롤러, 직렬 인터페이스 등)을 임베디드 시스템에 추가할 수 있다. 하드웨어 사양이 완료되면 쿼터스 II는 합성, 배치 및 배선을 수행하여 선택한 FPGA 대상에 전체 시스템을 구현한다.
Qsys는 니오스 II 시스템을 구축하는 데 사용될 수 있었던 이전 SOPC(System-on-a-Programmable-Chip) 빌더를 대체하고 있으며, 새로운 프로젝트에 권장되고 있다.
니오스 II 개발 프로세스
EDS(Embedded Design Suite)라고 불리는 별도의 패키지가 소프트웨어 개발을 관리한다. 이클립스 IDE를 기반으로 하는 EDS는 C/C++ 컴파일러(GNU 툴체인 기반), 디버거 및 명령어 세트 시뮬레이터를 포함한다. EDS를 통해 프로그래머는 시뮬레이션에서 애플리케이션을 테스트하거나 컴파일된 애플리케이션을 실제 FPGA 호스트에 다운로드하여 실행할 수 있다.
C/C++ 개발 체인이 GCC를 기반으로 하므로, 오픈 소스 소프트웨어의 대다수는 리눅스에서 최소한의 수정 또는 전혀 수정 없이 컴파일 및 실행된다. 서드 파티 운영 체제도 니오스 II로 포팅되었다. 여기에는 마이크리움 MicroC/OS-II, eCos, 세거 마이크로컨트롤러 embOS, ChibiOS/RT, μCLinux 및 FreeRTOS가 포함된다.
GCC 15는 니오스 II의 단종으로 인해 니오스 II 프로세서 지원을 중단했다.
니오스 II는 자일링스 FPGA 제품군의 경쟁 소프트코어 CPU인 MicroBlaze와 비교할 수 있다. 마이크로블레이즈와 달리 니오스 II는 서드 파티 IP 제공업체인 시높시스 디자인웨어를 통해 표준 셀 응용 고정 집적 회로용으로 라이선스를 받을 수 있다. 디자인웨어 라이선스를 통해 설계자는 니오스 기반 설계를 FPGA 플랫폼에서 대량 생산 ASIC 장치로 포팅할 수 있다.
오스만 함디 베이
오스만 함디 베이(Osman Hamdi Bey, 1842년 12월 30일 – 1910년 2월 24일)는 오스만 튀르키예의 행정가, 지식인, 미술 전문가이자 저명하고 선구적인 화가였다. 그는 오스만 제국의 첫 현대 고고학자였으며, 튀르키예 고고학과 박물관 학예사 직업의 창시자로 여겨진다. 그는 이스탄불 고고학 박물관과 오늘날 미마르 시난 순수 미술 대학교로 알려진 이스탄불 미술 아카데미(튀르키예어: Sanayi-i Nefise Mektebi)의 설립자였다. 그는 또한 카디쾨이의 초대 시장이기도 했다.
오스만 함디 베이 어린 시절
오스만 함디는 이브라힘 에뎀 파샤의 아들이었다. 이브라힘 에뎀 파샤는 오스만 대재상(1877–1878년 재직, 미드하트 파샤를 교체)으로, 원래 히오스섬 사키즈섬 출신의 그리스인 소년으로, 히오스 학살 후 아주 어린 나이에 고아가 되었다. 그는 캅탄-으 데리아 (대제독) 휘스레브 파샤에게 입양되었다. 그리고 결국 오스만 제국의 지배층에 오르게 된다.
오스만 함디는 이스탄불의 인기 있는 베식타시 지역에서 초등학교를 다녔다. 그 후 그는 먼저 이스탄불(1856년)에서, 다음으로 파리(1860년)에서 법학을 공부했다. 그러나 그는 대신 그림에 대한 흥미를 추구하기로 결정했고, 법학 과정을 중단하고 프랑스 오리엔탈리스트 화가인 장레옹 제롬과 귀스타브 불랑제 밑에서 훈련을 받았다. 당시 순수 미술의 국제적 수도였던 파리에서 9년간 머무는 동안, 그는 당대의 예술 행사에 대한 깊은 관심을 보였다.
오스만 함디 베이 어린 시절
그의 파리 체류는 나폴레옹 3세가 1867년 파리 만국 박람회에 술탄 압뒬아지즈를 초대하면서 오스만 술탄이 서유럽을 최초로 방문한 시기와도 일치한다. 그는 또한 파리에서 많은 청년 튀르크당원들을 만났고, 그들의 자유주의 사상에 노출되었음에도 불구하고, 술탄에게 충성하고 오래된 절대주의 체제에 도전하지 않는 파샤의 아들이었기 때문에 그들의 정치 활동에는 참여하지 않았다. 오스만 함디 베이는 파리에서 학생 시절 프랑스 여인 마리(Marie)를 만나 첫 번째 아내로 맞이했다. 그는 아버지의 축복을 받은 후 1869년 이스탄불(콘스탄티노폴리스)로 돌아와 결혼하여 두 딸을 낳았다.
튀르키예로 돌아온 후, 그는 미드하트 파샤(1876년 제1차 오스만 헌법을 제정하고 1876-1877년 대재상으로 재직하다가 오스만 함디 베이의 아버지인 이브라힘 에뎀 파샤로 교체된 청년 튀르크당의 주요 정치인이자 개혁가)의 행정팀의 일원으로서 오스만 바그다드 주로 파견되었다. 1871년, 오스만 함디는 궁정 의전실 차장으로 이스탄불로 돌아왔다. 1870년대 동안, 그는 오스만 관료제의 고위층에서 여러 임무를 수행했다. 그는 1875년에 카디쾨이의 초대 시장으로 임명되었고, 1년간 그 직책을 유지했다.
오스만 함디 베이 경력
오스만 함디는 1867년 파리 만국 박람회에 세 점의 그림을 전시했다. 현재까지 남아 있는 작품은 없지만, 그 제목은 '집시들의 휴식', '흑해 병사가 잠복해 있음', '병사의 죽음'이었다.
그의 경력에서 중요한 단계는 1881년 제국 박물관(Müze-i Hümayun) 관장으로 임명된 것이었다. 그는 박물관장으로서의 지위를 활용하여 박물관을 발전시키고 고고학법을 개정하며 국가 지원 고고학 탐사를 창설했다. 오스만 함디는 특히 펜실베이니아 대학교와 같은 국제 기관과의 관계 구축에 주력했으며, 1894년에는 그곳에서 명예 학위를 받았다. 1902년에는 니푸르 발굴 장면을 그려 펜실베이니아 대학교 박물관에 기증했다.
오스만 함디 베이 경력
1882년, 그는 미술 아카데미를 설립하고 관장이 되었는데, 이 아카데미는 오스만 제국 내에서 미학과 예술 기법에 대한 훈련을 제공했다. 1884년, 그는 역사 유물의 해외 밀반출을 금지하는 규정(Asar-ı Atîka Nizamnamesi)의 공포를 감독했으며, 이는 고대 유물 보존을 위한 법적 틀을 구축하는 데 거대한 진전이었다. 19세기 유럽 강대국들의 대표나 중개인들은 오스만 제국(당시에는 고대 그리스어 및 메소포타미아 문명 등의 지리적 영역을 포함하고 있었다)의 경계 내에서 역사적 가치가 있는 유물들을 일상적으로 밀반출했는데, 종종 수상하게 얻은 허가증이나 뇌물을 사용하여 유럽 수도의 박물관을 풍요롭게 했다.
오스만 함디 베이 경력
그는 튀르키예 팀에 의해 처음으로 과학 기반의 고고학 연구를 수행했다. 그의 발굴에는 남동부 아나톨리아의 넴루트산에 있는 콤마게네 왕국의 무덤 성소 (오늘날 튀르키예의 주요 관광지이자 유네스코 세계유산으로, 아드야만주 내에 위치), 남서부 아나톨리아의 라기나에 있는 헤카테 성소(방문객이 훨씬 적고, 오늘날 물라주 내에 위치), 그리고 레바논의 시돈과 같은 다양한 유적지가 포함되었다. 그가 시돈에서 발견한 석관들(알렉산드로스 석관으로 알려진 석관을 포함하여, 이 석관은 시돈의 왕 압달로니무스 또는 바빌론의 총독이었던 페르시아 귀족 마자이오스의 유골을 담고 있다고 여겨진다)은 전 세계 고고학 발견의 보석으로 여겨진다. 이 석관들을 보관하기 위해 그는 오늘날의 이스탄불 고고학 박물관을 1881년에 짓기 시작했다. 박물관은 그의 감독 하에 1891년에 공식적으로 개관했다.
박물관 및 아카데미 관장으로서의 전문 경력 내내, 오스만 함디는 그의 스승인 제롬과 불랑제의 화풍으로 계속 그림을 그렸다. 그러나 그는 이 그림들에서 자신과 가족 구성원들을 자주 묘사하여, 그의 작품에서 벗어난 오리엔탈리스트적 시선이라는 가정을 복잡하게 만들었다.
오스만 함디 베이 거북 조련사
함디의 1906년 그림인 거북 조련사는 2004년 12월 5백만 튀르키예 리라(약 350만 미국 달러)에 팔려 2019년까지 가장 가치 있는 튀르키예 그림으로 기록을 보유했다. 2004년 이스탄불 아르탐 안틱 A.Ç. 경매에서 페라 박물관과 튀르키예 현대 박물관이 이 그림을 놓고 경쟁했으며, 결국 페라 박물관이 낙찰받았다. 이 그림은 함디의 모습을 고풍스러운 옷을 입고 모스크에서 거북이를 훈련시키는 모습으로 묘사한다. 이러한 주제 선택으로 인해 많은 이들이 이 그림을 튀르키예의 갈등하는 국가 정체성에 대한 논평으로 본다. 이 그림은 화가 자신의 작업 방식에 대한 풍자적인 암시를 담고 있으며, 그의 협력자나 제자들의 방식과 비교하여 자신만의 방식을 보여준다. 또한 18세기 초 튤립 시대 야간 외출 시 거북이 등껍질에 양초를 올려 조명 및 장식용으로 사용했던 역사적 사실을 참고하기도 했다. 이 그림은 수나 이난 키라치 재단에 의해 인수되었으며, 현재 이 재단이 설립한 이스탄불의 페라 박물관에 전시되어 있다. 그의 '코란을 낭독하는 소녀'(1880)는 2019년 9월 본햄스 경매에서 780만 미국 달러에 팔리며 기록을 경신했다.