라텍스에서 입력이 많은 큰 논리 회로를 그리는 방법

라텍스에서 입력이 많은 큰 논리 회로를 그리는 방법

모든 입력을 표시하지 않고 128개의 입력이 있는 논리 회로를 어떻게 그릴 수 있습니까? 즉, 3비트 또는 4비트를 입력으로 표시하여 논리 다이어그램을 그릴 수 있지만 1개 또는 2개의 입력으로 레이블을 지정하여 128개의 입력을 어떻게 그릴 수 있습니까? 따라서 127(레이블 없음)까지 계속되고 128번째 비트에는 레이블이 지정되어야 합니다.

답변1

우선 TeX.SE에 오신 것을 환영합니다. 다음에는 지금까지 시도한 내용을 보여주세요. 우리는 일반적으로 do-it-for-me질문 유형을 선호하지 않습니다 .

답변을 시작하려면 circuitspositioning내에서 쉽게 이를 달성할 수 있습니다 tikzlibrary.

\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{circuits.logic.US,circuits.logic.IEC, positioning}
\begin{document}
\begin{tikzpicture}[minimum height=0.75cm] 
\node[and gate US, draw,logic gate inputs=nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn] (A) {}; 
\foreach \a in {1,...,128}
\draw (A.input \a) -- ([xshift=-2cm]A.input \a); 
\draw (A.output) -- ([xshift=2cm]A.output);
% naming the nodes
\node [left = 2.1cm of A.input 1] (n1) {1};
\node [left = 2.1cm of A.input 2] (n2) {2};
\node [left = 2.1cm of A.input 126] (n3) {126};
\end{tikzpicture}   

\end{document}

얻으려면 :

여기에 이미지 설명을 입력하세요

그러나 에서는 ciruittikz다음을 살펴볼 가치가 있습니다.

Circuitikz를 사용하여 여러 입력 논리 포트를 구현할 수 있습니까?

Circuitikz에서 논리 게이트 입력을 반전시키는 방법

답변2

가독성 측면에서 볼 때 128포트는 너무 과하다고 생각합니다. (출시되지 않은) 새 버전을 사용하는 경우 circuitikz다음을 찾을 수 있습니다.github 페이지의 스냅샷) 핀은 16개로 제한됩니다(내 의견으로는 아직 읽을 수 없음).

다음과 같은 작업을 수행하고 큰 부분으로 연결되는 전선을 텍스트로 표시하거나 일종의 기호로 표시합니다.

\documentclass[border=10pt]{standalone}
\usepackage[siunitx, RPvoltages]{circuitikzgit}
\begin{document}
\begin{circuitikz}[
    ]
    \ctikzset{logic ports origin=center}
    \draw(0,0) node[dipchip, num pins=14, no topmark, 
    external pins width=0, hide numbers](A){};
    \foreach \i/\l in {1/1, 2/2, 7/128} 
    \draw (A.bpin \i) node[right, font=\tiny]{\l} -- ++(-0.5,0) coordinate(my pin \i);
    \path (A.bpin 4) node[left]{$\vdots$};
    \draw (A.bpin 11) node[above right, font=\tiny]{out} -- ++(0.5,0);
    \path (A.center) node [american and port]{IC1};
    \draw (my pin 1) -- ++(-0.5,0) node[american xnor port, anchor=out]{}; 
    \draw (-4,-1) node[american xnor port](B){};
    \draw [->] (B.out) -- ++(0.5,0) node[right, align=left]{to IC1\\ pin 36};
\end{circuitikz}
\end{document}

예

관련 정보