![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/1Y1rM/btqARYtAZRQ/4BqeQeKZYQxkl87TIumeTk/img.png)
2020년 새해의 아침이 밝았다. 누구나 새해가 되면, 개인적인 소망과 이루고 싶은 목표를 정하곤 한다. 2019년 한 해를 돌아보고, 계획했던 만큼 성취를 이루었는지 점검해 보는 것도 물론 중요하지만 일단 새로운 마음으로 작심삼일을 해보자는 생각이 들었다. 그렇다. 시작이 반이다. 그래서 새롭게 기획한 자기 경영 series의 첫 포스팅은 2020년 신년 목표를 세우는 것으로 정했다. 인터넷 검색을 통해 알아보니 시중에 나와 있는 목표 설정 도구는 참 많았다. 일단 후보군은 3가지로 좁혀졌는데, 첫 번째, 구관이 명관. SMART 목표 설정 두 번째, 괴물 투수 오타니 쇼헤이가 고교 시절부터 사용했다던 만다라트 세 번째, 혁신적인 기업 구글에서 사용 중인 OKR 일단 이 중에 가장 끌린 것이 두 번째인..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/lHOQI/btqBCn68HrN/qsquWKbQ38tftEOHTuiB6k/img.png)
특별 기획 홈프로젝트 1탄! Python으로 뽀모도로 타이머 만들기 일단 거창하게 홈프로젝트라는 기획 명으로 콘텐츠를 만들어 보았다. 사실 별건 아니고, 그냥 평소에 "이런 게 있었으면 좋았을 텐데." 했던 것을 직접 만들어 보면서 그 과정을 블로그에 포스팅할 것이다. 자, 그럼 시작해볼까? 뽀모도로 타이머라고 하면, 이름조차 다소 생소한 사람들이 많을 것이다. 내가 시간 관리 기법의 하나인 뽀모도로 타이머를 처음 알게 된 것은 대학원에서 공부하던 시절이었다. 당시에 나는 주어진 시간을 어떻게 하면 효율적으로 쓸 수 있을까 하는 생각으로 여러 가지 시간 관리 기법을 닥치는 대로 사용해보고 있었다. 그중에 몇 가지는 지금까지도 사용하고 있는데, 대표적으로 GTD(Getting Things Done)와 On..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/ttPEK/btqBuvYxiVF/AVEsQb4vLiDmIG0wa1mNMk/img.png)
평화로운 나날이었다. 우리는 일정대로 설계를 마치고, 검증 coverage를 높이기 위한 마무리 작업에 한창이었다. 설계자가 놓칠 수 있는 부분에 대한 lint 체크도 완료하였고, 합성을 해보니 area, power, timing까지 문제 있어 보이는 부분은 없었다. 그렇게 과제 하나가 종료되고 다음 과제까지 잠시의 휴식이 주어지는 듯 했다. 그렇다. 모두가 그렇게 생각했다. 그 연락이 있기 전까지는... 항상 어떠한 문제가 생기면, 예고를 하고 이슈가 발생하는 경우는 없다. 몇월 며칠 몇 시에 문제가 생길테니, 단단히 준비하고 있으라고 먼저 알려줬더라면 이렇게 무방비로 당하고 있지만은 않았을 것이다. 과제 쪽에서 X(unknown) value가 우리가 설계한 block부터 뒤쪽으로 전파되고 있다는 연락..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/9UMJs/btqzv6Fuklk/82GXmOh6NgbKra8K7WU6eK/img.png)
논리 회로 설계나 디지털 시스템 등의 입문 과목을 들으면서 Verilog라는 언어를 배우게 되면, 가장 헷갈리는 부분이 바로 wire와 reg의 사용에 관한 부분일 것이다. 나 또한 digital 회로 설계자로서 커리어를 쌓아오고 있지만, 명확하게 이 data type에 대해서 이해하고 사용하게 된 것은 그리 오래되지 않았다. 내가 학부생으로 공부할 당시만 해도, 이 두 개념에 대해 어떠한 차이가 있는지 알려주는 자료를 찾기 어려웠지만, 이제는 구글에 검색어만 넣어봐도 자세한 설명을 제공하고 있는 블로그들을 쉽게 발견할 수 있었다. 정말이지 혼자 공부하기가 수월해진 세상이다. 블로그와 Youtube의 비약적인 발전으로 인해 지식을 쌓고자 조금의 노력만 한다면 누구나 해당 학문을 익히고 배울 수 있게 되었..
생각의 탄생 - 창의적 인간. 그리고 열 세 가지 생각법 이 책은 로버트 루트번스타인, 미셸 루트번스타인이 지은 아주 유명한 책이다. 이 책을 처음 접했던 것은 대학 교양 수업 때였던 것으로 기억한다. 교양필수 과목이었고, 정확한 과정명은 기억이 나지 않지만 '창의적 공학 설계' 등의 이름이지 않았을까 싶다. 수업 내용은 아이디어 발상을 도와주는 방법론인 TRIZ를 메인으로 하고 있었고, 팀별로 해결해야 할 난제 중 하나를 선택하여 창의적으로 문제를 풀어내는 것이 수업의 목적이었다. 당시 오늘 독서 감상을 나눠볼 책인 '생각의 탄생'이 참고서적 중 하나였다. 대부분의 대학생이 그렇듯이 나도 교과서로 공부하는 것이 아니고 교수님이 따로 발표용으로 사용하신 유인물로 공부했던 기억이 난다. 솔직하게 말하면, ..
지난 시간에는 Modelsim을 이용하여 간단한 Verilog code를 작성해보고 simulation까지 진행했었다. 간단한 combinational logic을 설계하였기에, timing diagram을 그릴 필요까지는 없었다. 그러나, 실제 우리가 다뤄야 할 회로들은 대부분 sequential logic과 combinational logic이 복잡하게 얽혀져 있다. 실제로 timing을 면밀히 고려하지 않아, 설계 의도대로 회로가 동작하지 않고 문제를 일으키는 경우가 종종 있다. clock 신호에 동기화되어 cycle마다 신호들이 어떻게 변화해야 하는지 어떤 timing에 low에서 high로 값이 천이하고 혹은 변화하지 않고 특정 시간까지 값을 유지해야 하는지 등등 꼼꼼하게 timing diagr..
지난 시간에 ModelSim을 다운로드 받고, 실행하는 방법까지 다뤄봤었다. 이번에는 간단한 디지털 회로를 설계하고 ModelSim을 이용하여 simulation을 진행하는 방법에 관해 이야기 하고자 한다. 만약, ModelSim을 다운받고 설치하는 방법을 알고 싶다면 ▼아래 링크를 클릭하길 바란다. https://dreamsailor.tistory.com/3?category=856131 전자공학이라는 학문을 배우기 시작한 사람 중에 회로 설계를 세부 전공으로 선택하는 사람들이 반드시 직면한다는 고민은 다음과 같다. 아날로그 설계냐 아니면 디지털 설계냐 현업에서 설계 업무를 하다 보니, 두 가지 서로 다른 background를 가진 사람들을 많이 만나게 된다. 이러한 사람들과 함께 일을 하면서 느꼈던 것..