در این مطلب، ویدئو خوردن خرگوش ها: راهنمای استفاده از پایتون برای تسخیر سیستم های ویدئویی FPGA با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,000 –> 00:00:17,820
سریع سریع وارد شوید، اوم پس سلام، من
2
00:00:17,820 –> 00:00:21,539
تیم هستم، ابتدا میخواهم با برخی موارد
3
00:00:21,539 –> 00:00:26,250
سلب مسئولیت شروع کنم، من یک توسعهدهنده حرفهای fpga
4
00:00:26,250 –> 00:00:31,410
نیستم، من یک سرگرمی هستم، همچنین
5
00:00:31,410 –> 00:00:35,540
پروژههای زیادی دارم و این برخی از آنهاست که
6
00:00:35,540 –> 00:00:40,770
در موارد FPGA شروع کردم. سال 2011 و
7
00:00:40,770 –> 00:00:44,730
هنوز ادامه دارد، بنابراین نمیتوانم بگویم که
8
00:00:44,730 –> 00:00:49,770
بسیار موفق بودهام، اما
9
00:00:49,770 –> 00:00:52,710
کارهای زیادی برای انجام دادن کارهای جالب دارم و
10
00:00:52,710 –> 00:00:55,050
بیشتر آنها در پشت
11
00:00:55,050 –> 00:00:57,090
کار دیگران بوده است، بنابراین
12
00:00:57,090 –> 00:00:59,640
میخواهم از همه تشکر کنم. افرادی
13
00:00:59,640 –> 00:01:02,090
که کارهایی را که من ساختهام
14
00:01:02,090 –> 00:01:05,369
انجام دادهاند، این گونه میگویند که تو
15
00:01:05,369 –> 00:01:07,020
روی شانههای غولها ایستادهای و
16
00:01:07,020 –> 00:01:09,420
من در واقع فکر میکنم این تقریباً
17
00:01:09,420 –> 00:01:12,000
درست است که من این کار را به تنهایی انجام ندادم
18
00:01:12,000 –> 00:01:15,900
، من چیزهای زیادی داشتم. خیلی کمک کردم از
19
00:01:15,900 –> 00:01:19,680
آنها تشکر می کنم، بنابراین یک چیز وجود دارد که
20
00:01:19,680 –> 00:01:22,470
باید در مورد من بدانید این است که من پایتون را
21
00:01:22,470 –> 00:01:25,920
دوست دارم آنقدر پایتون را دوست دارم که
22
00:01:25,920 –> 00:01:29,040
کنفرانسی را در مورد پایتون در استرالیا راه اندازی کردم
23
00:01:29,040 –> 00:01:33,030
و خیلی خوب پیش می رفت، اما
24
00:01:33,030 –> 00:01:37,259
نکته دیگر این است که من یک همچنین بسیار کاربردی است
25
00:01:37,259 –> 00:01:39,900
من فکر می کنم شما باید از ابزار مناسب
26
00:01:39,900 –> 00:01:41,130
برای دکل استفاده کنید ht job
27
00:01:41,130 –> 00:01:43,590
به نظر می رسد که پایتون
28
00:01:43,590 –> 00:01:45,840
ابزار مناسبی برای اکثر مشاغل است اما
29
00:01:45,840 –> 00:01:50,579
ابزار مناسبی برای هر شغلی نیست و اگر با شما صحبت می کردم
30
00:01:50,579 –> 00:01:53,579
شاید پنج سال پیش می
31
00:01:53,579 –> 00:01:59,130
گفتم برنامه نویسی پایتون و FPGA
32
00:01:59,130 –> 00:02:01,860
ابزار مناسبی برای این کار نیست.
33
00:02:01,860 –> 00:02:05,790
انجام این کار وحشتناک است و
34
00:02:05,790 –> 00:02:09,350
من ویدیو را برای یک ثانیه از دست
35
00:02:15,370 –> 00:02:20,930
دادم، به راهم ادامه می دهم، فکر می کنم این
36
00:02:20,930 –> 00:02:25,490
ارتباط است بله، اما اکنون می گویم
37
00:02:25,490 –> 00:02:30,440
بله باید این کار را انجام دهید و این صحبت برای
38
00:02:30,440 –> 00:02:33,800
متقاعد کردن شماست که چرا باید این کار را انجام دهید.
39
00:02:33,800 –> 00:02:35,690
من می خواهم به تاریخچه ای
40
00:02:35,690 –> 00:02:40,610
در مورد چگونگی شروع به
41
00:02:40,610 –> 00:02:44,750
برنامه نویسی FPGA وارد شوم و بنابراین من از استرالیا آمده ام
42
00:02:44,750 –> 00:02:48,410
همانطور که ممکن است از لهجه من دیده باشید یا
43
00:02:48,410 –> 00:02:51,260
از لهجه شنیده باشید، استرالیا در
44
00:02:51,260 –> 00:02:54,830
واقع مکان بسیار بزرگی است،
45
00:02:54,830 –> 00:02:58,330
استرالیا در بالای ایالات متحده قرار گرفته است.
46
00:02:58,330 –> 00:03:02,209
به جز ما جمعیت بسیار کمی داریم
47
00:03:02,209 –> 00:03:04,280
که به این معنی است که فاصله کمی
48
00:03:04,280 –> 00:03:06,350
برای رسیدن به هر نقطه وجود دارد، به این معنی
49
00:03:06,350 –> 00:03:08,269
که جامعه فناوری که بسیار
50
00:03:08,269 –> 00:03:10,790
کوچک است گسترده شده است و بنابراین من
51
00:03:10,790 –> 00:03:15,670
همتایان زیادی نداشتم که در فناوری بودند و
52
00:03:15,670 –> 00:03:18,019
واقعاً می خواستم کمک برای
53
00:03:18,019 –> 00:03:22,040
نسل بعدی افرادی که در
54
00:03:22,040 –> 00:03:24,920
استرالیا بودند و نمیتوانستند در استرالیا شرکت کنند، از گروهها
55
00:03:24,920 –> 00:03:26,660
و کنفرانسها استفاده کنند
56
00:03:26,660 –> 00:03:31,040
، زیرا من این پروژه را راهاندازی کردهام.
57
00:03:31,040 –> 00:03:35,540
58
00:03:35,540 –> 00:03:39,799
در مورد
59
00:03:39,799 –> 00:03:43,910
آسان کردن ضبط و پخش
60
00:03:43,910 –> 00:03:46,280
زنده کنفرانس ها برای مردم بود تا افرادی
61
00:03:46,280 –> 00:03:47,680
که نمی توانستند به کنفرانس
62
00:03:47,680 –> 00:03:51,670
برسند همچنان محتوا را ببینند و من
63
00:03:51,670 –> 00:03:53,870
فکر می کنم این واقعاً مهم است زیرا
64
00:03:53,870 –> 00:03:55,940
دلایل زیادی وجود دارد که
65
00:03:55,940 –> 00:03:57,440
ممکن است شما نتوانید به یک کنفرانس بروید
66
00:03:57,440 –> 00:03:59,660
و فکر نمیکنم
67
00:03:59,660 –> 00:04:01,850
فقط به این دلیل که نمیتوانید از نظر فیزیکی به آنجا برسید
68
00:04:01,850 –> 00:04:07,280
و زمانی که این کار را شروع کردم، نباید کنار گذاشته
69
00:04:07,280 –> 00:04:09,040
شوید و میدانم که در
70
00:04:09,040 –> 00:04:12,980
سال 2009 چند جعبه در
71
00:04:12,980 –> 00:04:15,019
جلوی آن داشتیم که از
72
00:04:15,019 –> 00:04:16,640
مجری عکس میگرفتیم. یکی که
73
00:04:16,640 –> 00:04:21,550
از دوربین عکاسی می کرد و آنها شروع به
74
00:04:21,550 –> 00:04:23,990
DV و VGA کردند
75
00:04:23,990 –> 00:04:26,240
و من برای انجام این کار خیلی دیر شده بودم،
76
00:04:26,240 –> 00:04:28,250
کایل مثل همیشه این کار را انجام می
77
00:04:28,250 –> 00:04:32,750
داد و در
78
00:04:32,750 –> 00:04:36,440
پنج یا شش سال گذشته
79
00:04:36,440 –> 00:04:39,560
این کار ممکن است d HDMI آمد و
80
00:04:39,560 –> 00:04:47,750
این باعث شد که تلاش برای
81
00:04:47,750 –> 00:04:50,509
انجام این کار بسیار سخت شود زیرا تهیه
82
00:04:50,509 –> 00:04:54,280
سخت افزار ضبط HDMI قابل اعتماد ارزان قیمت
83
00:04:54,280 –> 00:04:57,530
واقعاً سخت و واقعاً
84
00:04:57,530 –> 00:05:06,349
گران بود و سپس در سال 2011 خرگوش ما
85
00:05:06,349 –> 00:05:10,190
این سخنرانی را ارائه داد که کسی من را به آن مرتبط کرد.
86
00:05:10,190 –> 00:05:11,660
حضوری در آن شرکت کنم یا
87
00:05:11,660 –> 00:05:13,310
هر چیزی که من آنقدر خونسرد نبودم که به
88
00:05:13,310 –> 00:05:17,599
CCC بروم در آن لحظه این صحبت در مورد این
89
00:05:17,599 –> 00:05:19,280
چیز جدیدی که او ایجاد کرده بود به نام هر
90
00:05:19,280 –> 00:05:22,550
تلویزیونی به هر تلویزیونی به چه چیزی و متاسفم
91
00:05:22,550 –> 00:05:26,599
این اولین است و این مهربان است از
92
00:05:26,599 –> 00:05:29,630
آنچه می بینید و یک مرد در
93
00:05:29,630 –> 00:05:32,840
وسط بین ورودی HDMI و
94
00:05:32,840 –> 00:05:36,169
خروجی HDMI انجام می دهد و همانطور که
95
00:05:36,169 –> 00:05:41,240
صبح گفت هیچ تصویری ندارد اما دلیلش این است
96
00:05:41,240 –> 00:05:43,099
که او با محتوای رمزگذاری شده
97
00:05:43,099 –> 00:05:46,849
در مورد استفاده من کار می کند که در
98
00:05:46,849 –> 00:05:50,360
کنفرانس ها داده ها از لپ تاپ ارائه دهنده
99
00:05:50,360 –> 00:05:53,120
به پروژکتور
100
00:05:53,120 –> 00:05:55,159
در واقع اگر رمزگذاری شده باشد لازم نیست رمزگذاری شود،
101
00:05:55,159 –> 00:05:56,479
احتمالاً به این معنی است که شما چیزی را پخش می
102
00:05:56,479 –> 00:05:58,009
کنید که به هر حال نباید ضبط
103
00:05:58,009 –> 00:06:00,590
می کردم و همینطور با خروجی
104
00:06:00,590 –> 00:06:07,099
دوربین و این باعث شد فکر کنم چه می شود اگر
105
00:06:07,099 –> 00:06:10,280
من دقیقاً همان کاری را انجام داد که اسم حیوان دست اموز گفت که
106
00:06:10,280 –> 00:06:15,380
نباید انجام دهیم و بنابراین
107
00:06:15,380 –> 00:06:18,590
پروژه HDMI به USB را ایجاد کردم که ورودی HDMI را می گیرد
108
00:06:18,590 –> 00:06:20,719
و خروجی من را تسریع می کند و سپس
109
00:06:20,719 –> 00:06:25,789
یک تصویر دیجیتالی تمیز و زیبا از
110
00:06:25,789 –> 00:06:27,949
آن در پورت USB ایجاد می کند، اما این فقط برای
111
00:06:27,949 –> 00:06:30,500
محتوای رمزگذاری نشده است. سعی
112
00:06:30,500 –> 00:06:32,330
کنید محتوا را از طریق آن اجرا کنید، فقط شکست می خورد
113
00:06:32,330 –> 00:06:35,139
و می گویید نه من نمی توانم این کار را انجام دهم
114
00:06:35,139 –> 00:06:38,139
و
115
00:06:38,169 –> 00:06:41,810
پروژه hdmi USB اساسا یک
116
00:06:41,810 –> 00:06:45,230
سیستم عامل و سخت افزار منبع باز برای انجام
117
00:06:45,230 –> 00:06:48,590
فیلم برداری از کنفرانس است و از آن استفاده شده است
118
00:06:48,590 –> 00:06:55,510
و این دستگاه مبتنی بر FPGA است
119
00:06:55,510 –> 00:07:00,650
و دلیل این که FPGA مبتنی بر FPGA است این است که من یک
120
00:07:00,650 –> 00:07:04,850
انسان هستم و مانند همه انسانها من بدم میآید و همیشه
121
00:07:04,850 –> 00:07:09,350
باگها را مینویسم و بنابراین می
122
00:07:09,350 –> 00:07:11,300
خواهم بتوانم باگهای خود را برطرف کنم پس از آن، آ
123
00:07:11,300 –> 00:07:14,720
ها را در قسمت رفع مشکلاتم ایجاد کردم و بنابراین با
124
00:07:14,720 –> 00:07:17,960
ستفاده از FPGA همه مشکلات سخت افزاری من
125
00:07:17,960 –> 00:07:20,540
مشکلات نرم افزاری هستند و نرم افزاری که
126
00:07:20,540 –> 00:07:23,090
می توانید آن را به روز کنید و آن را برطرف کنید، بنابراین هر
127
00:07:23,090 –> 00:07:25,190
کنفرانسی که به آن می رویم مشکلات بیشتری را پیدا می کنیم
128
00:07:25,190 –> 00:07:27,919
و سپس آنها را برطرف می کنیم و به
129
00:07:27,919 –> 00:07:30,289
این ترتیب که این مشکل ادامه پیدا نمی کند و بنابراین
130
00:07:30,289 –> 00:07:34,010
این واقعا عالی بود و این سخت افزار
131
00:07:34,010 –> 00:07:35,990
اکنون در حال استفاده است. برای ثبت یک کل مجموعه
132
00:07:35,990 –> 00:07:38,479
ای از کنفرانس ها در سراسر جهان و
133
00:07:38,479 –> 00:07:40,850
در واقع برای ضبط این
134
00:07:40,850 –> 00:07:43,220
کنفرانس استفاده می شود، امیدوارم اگر کایل به
135
00:07:43,220 –> 00:07:49,570
نظر برسد کارلی را سرزنش نمی کند و
136
00:07:49,570 –> 00:07:53,680
چیز دیگری که من واقعاً دوست دارم این است که
137
00:07:53,680 –> 00:07:57,050
اسم حیوان دست اموز در واقع از یک سری
138
00:07:57,050 –> 00:07:59,270
چیزهایی که ما داریم استفاده می کند. از طریق این
139
00:07:59,270 –> 00:08:03,500
فرآیند در هر تلویزیون او توسعه یافت – بنابراین هر تلویزیون او
140
00:08:03,500 –> 00:08:05,990
الهام بخش پروژه من شد و سپس به
141
00:08:05,990 –> 00:08:08,030
پروژه او کمک کرد بنابراین این واقعاً
142
00:08:08,030 –> 00:08:12,620
چیزهای منبع باز پاییزی عالی است، اما من قول
143
00:08:12,620 –> 00:08:17,120
دادم در مورد پایتون صحبت کنم و پایتون در
144
00:08:17,120 –> 00:08:19,400
واقع واقعاً به داستان بسیار نزدیک
145
00:08:19,400 –> 00:08:23,419
است. HDMI به USB و دلیل آن این است که
146
00:08:23,419 –> 00:08:26,889
در اینجا نحوه ضبط کنفرانس است،
147
00:08:26,889 –> 00:08:29,120
می توانید ببینید که
148
00:08:29,120 –> 00:08:32,599
قطعات بسیار زیادی در آن وجود دارد، یک ایستگاه میکس
149
00:08:32,599 –> 00:08:35,650
در اینجا وجود دارد که در پایتون نوشته
150
00:08:35,650 –> 00:08:37,940
151
00:08:37,940 –> 00:08:41,779
152
00:08:41,779 –> 00:08:44,990
شده است. به طور کلی پایتون است، یک
153
00:08:44,990 –> 00:08:50,490
وب سایت جنگو وجود دارد و
154
00:08:50,490 –> 00:08:52,529
من در مورد پایتون صحبت می کنم، بنابراین حدس
155
00:08:52,529 –> 00:08:54,750
می زنم پایتون در کنفرانس وجود داشته باشد و
156
00:08:54,750 –> 00:08:56,730
برخی افراد می گویند که آنها در ذهن من پایتون هستند
157
00:08:56,730 –> 00:09:01,760
، اما در مورد این t
158
00:09:01,850 –> 00:09:08,040
اینها در ابتدا پایتون نبودند
159
00:09:08,040 –> 00:09:11,010
، دو زبان اصلی برای برنامه نویسی
160
00:09:11,010 –> 00:09:15,540
FPGA بسیار لاگ و VHDL وجود دارد و ممکن است
161
00:09:15,540 –> 00:09:22,080
متوجه شوید که اینها پایتون نیستند، اما همانطور
162
00:09:22,080 –> 00:09:26,040
که گفتم من یک فرد عملی هستم که از
163
00:09:26,040 –> 00:09:29,399
ابزار مناسب برای کار مناسب و VHDL
164
00:09:29,399 –> 00:09:32,850
verilock استفاده می کنم. چیزی است که همه در این فضا از آن استفاده
165
00:09:32,850 –> 00:09:36,270
می کردند و بنابراین من تصمیم گرفتم
166
00:09:36,270 –> 00:09:41,070
با آن شروع کنم و بنابراین ما یک
167
00:09:41,070 –> 00:09:43,080
سیستم عامل برای این برد توسعه دهنده ایجاد کردیم که
168
00:09:43,080 –> 00:09:46,080
به آن برد Doolin Atlas می گویند که
169
00:09:46,080 –> 00:09:48,750
پایه ای بر روی مخلوطی از VHDL بود و خیلی طولانی بود
170
00:09:48,750 –> 00:09:50,640
که نمی توانستم تصمیم بگیرم. از کدام یک استفاده کرد، بنابراین او
171
00:09:50,640 –> 00:09:53,490
از هر دو استفاده کرد و من فقط از این یک برد پشتیبانی
172
00:09:53,490 –> 00:09:56,910
کردم و تقریباً به نوعی کار کردم اما
173
00:09:56,910 –> 00:10:03,420
واقعاً کار نکردم و حدود سه
174
00:10:03,420 –> 00:10:06,240
سال طول کشید تا چیزی را به دست آوریم که
175
00:10:06,240 –> 00:10:08,220
اساساً کار می کرد و ما هنوز
176
00:10:08,220 –> 00:10:10,410
تعداد زیادی ویژگی داشتیم که ما میخواستم
177
00:10:10,410 –> 00:10:13,980
مجوز
178
00:10:13,980 –> 00:10:16,190
آن سفتافزار را نیز به آن اضافه کنم، به نوعی پیچیده بود،
179
00:10:16,190 –> 00:10:18,589
زیرا بسیاری از آنها بر اساس
180
00:10:18,589 –> 00:10:21,649
یادداشتهای برنامههای گویشها بودند که
181
00:10:21,649 –> 00:10:24,149
محدودیتهای مجوز جالبی در اطراف
182
00:10:24,149 –> 00:10:25,730
آن وجود داشت
183
00:10:25,730 –> 00:10:30,480
و سپس آن برد دیجیتال اطلس اصلی
184
00:10:30,480 –> 00:10:33,270
بود. ما واقعاً یک برد برنامهنویس میخواستیم
185
00:10:33,270 –> 00:10:35,640
که برای ضبط
186
00:10:35,640 –> 00:10:37,860
کنفرانسها و استفاده از گروهها طراحی شده باشد، بنابراین
187
00:10:37,860 –> 00:10:39,180
سختافزار خود را توسعه دادیم
188
00:10:39,180 –> 00:10:41,839
که همگی منبع باز است که میتوانید وارد
189
00:10:41,839 –> 00:10:44,370
آن شوید، مانند انجام طرحوارههای کامل در Chi
190
00:10:44,370 –> 00:10:45,959
CAD و همه چیزهای دیگر. برای این،
191
00:10:45,959 –> 00:10:48,660
اما این بدان معناست که ما دو برد داشتیم که
192
00:10:48,660 –> 00:10:53,730
باید پشتیبانی میکردیم و هر دو برد بسیار
193
00:10:53,730 –> 00:10:57,690
شبیه به هم هستند، اما یکسان نیستند،
194
00:10:57,690 –> 00:11:00,300
بنابراین کد
195
00:11:00,300 –> 00:11:04,080
برای پشتیبانی از هر دو نیاز به یک سری refactoring داشت و هر دو بسیار طولانی
196
00:11:04,080 –> 00:11:09,740
و VHDL انجام یک کار را واقعا سخت میکند.
197
00:11:09,740 –> 00:11:14,060
سیستمی که اکثراً یکسان است اما نیست
198
00:11:14,060 –> 00:11:18,870
و بعد از این
199
00:11:18,870 –> 00:11:23,670
پیشرفت ناامیدکننده من بسیار
200
00:11:23,670 –> 00:11:26,880
از این پروژه ناامید شدم و این
201
00:11:26,880 –> 00:11:29,460
چیز را کشف کردم و میتوانستم جوراب و نور
202
00:11:29,460 –> 00:11:32,130
x را به من تبدیل کنم و نکته جالبی که ممکن است
203
00:11:32,130 –> 00:11:35,910
متوجه شوید این است که پایتون است- بر اساس
204
00:11:35,910 –> 00:11:37,980
این اولین چیزی است که او قبلاً از
205
00:11:37,980 –> 00:11:41,870
HDMI و DVI پشتیبانی می کرد. او از DDR Ram
206
00:11:41,870 –> 00:11:44,610
Ethernet پشتیبانی می کرد و قبلاً از
207
00:11:44,610 –> 00:11:48,300
20 برد پشتیبانی می کرد و بنابراین
208
00:11:48,300 –> 00:11:51,780
من از اینکه از کجا می رود یا از پیشرفت لذت نمی برم لذت نمی برم.
209
00:11:51,780 –> 00:11:55,670
پایتون را امتحان کنید
210
00:11:55,670 –> 00:11:59,880
و بنابراین من خودم وقت ندارم این کار را انجام
211
00:11:59,880 –> 00:12:00,570
دهم،
212
00:12:00,570 –> 00:12:04,200
من یک کار تمام وقت دارم، بنابراین
213
00:12:04,200 –> 00:12:06,840
تصمیم گرفتم برای این مرد به نام
214
00:12:06,840 –> 00:12:09,840
فلورنت که در فرانسه زندگی می کند و این شرکت را اداره می کند پول بگذارم و
215
00:12:09,840 –> 00:12:13,320
بتواند از دیجیتال لذت ببرد و او
216
00:12:13,320 –> 00:12:16,620
همه چیز را بازنویسی کرد. که سفتافزار ما
217
00:12:16,620 –> 00:12:22,010
در چهار هفته با ویژگیهای بسیار بیشتر انجام داد، من
218
00:12:22,010 –> 00:12:25,680
در Florent برنامهنویس بهتری
219
00:12:25,680 –> 00:12:29,790
در VHDL نسبت به من هستم، اما حتی با در
220
00:12:29,790 –> 00:12:32,460
نظر گرفتن این موضوع، این کار بسیار
221
00:12:32,460 –> 00:12:37,860
چشمگیر است و این ویژگیها
222
00:12:37,860 –> 00:12:40,830
اکنون دستگاه دارای بافر بود، بنابراین اگر
223
00:12:40,830 –> 00:12:44,100
ویدیوی بلندگو حذف شد، ما همچنان در حال
224
00:12:44,100 –> 00:12:47,490
ارسال ویدیو بودیم و بنابراین پروژکتور
225
00:12:47,490 –> 00:12:49,200
شما به خواب نمیرود یا هر یک از این
226
00:12:49,200 –> 00:12:51,360
موارد را ماتریس مشکل داشتیم یک
227
00:12:51,360 –> 00:12:53,990
مدل پشتیبانی شده از بردها که پشتیبانی از اترنت
228
00:12:53,990 –> 00:12:57,090
داشت.
229
00:12:57,090 –> 00:12:59,220
رابط خط فرمان
230
00:12:59,220 –> 00:13:01,740
واقعاً عالی بود اگر
231
00:13:01,740 –> 00:13:05,400
این دو ویژگی را با هم مقایسه کنید و برای
232
00:13:05,400 –> 00:13:07,740
بهتر کردن اوضاع، مجوز
233
00:13:07,740 –> 00:13:10,590
واقعاً واضح بود، واقعاً منبع
234
00:13:10,590 –> 00:13:15,150
باز بود، هیچ کد منبع مشکوکی در
235
00:13:15,150 –> 00:13:17,940
آنجا وجود نداشت، همه چیز نوشته شده بود. از مدرسه
236
00:13:17,940 –> 00:13:20,720
با استفاده از هیچ یک از فروشنده ها چیزهایی ارائه نکرد
237
00:13:20,720 –> 00:13:26,400
و بنابراین واقعا عالی بود و من
238
00:13:26,400 –> 00:13:29,880
فکر می کنم این یک مثال واقعی است
239
00:13:29,880 –> 00:13:34,020
که چرا پایتون انتخاب درستی بوده است، اما
240
00:13:34,020 –> 00:13:38,730
به شما نمی گوید که چرا این کار می کرد
241
00:13:38,730 –> 00:13:41,660
چرا او سازنده تر بود. ما
242
00:13:41,660 –> 00:13:44,790
زمانی وارد سیستم شدیم که افراد بسیار کمی
243
00:13:44,790 –> 00:13:48,900
دارند و بنابراین بیایید عمیقتر
244
00:13:48,900 –> 00:13:54,300
به آنچه که این سیستم پایتون واقعاً
245
00:13:54,300 –> 00:13:59,910
به شما میدهد غوطه ور شویم و بنابراین اینجاست که
246
00:13:59,910 –> 00:14:02,910
بحث در مورد چگونگی تبدیل شدن به یک
247
00:14:02,910 –> 00:14:05,550
توسعهدهنده مؤثر FPGA تغییر میکند، حتی اگر این را خریداری نکنید.
248
00:14:05,550 –> 00:14:09,150
اگر
249
00:14:09,150 –> 00:14:12,450
این نکات را فقط در برنامهنویسی FPGA در سال TF در هر روز دنبال کنید،
250
00:14:12,450 –> 00:14:17,310
مانند زمانی
251
00:14:17,310 –> 00:14:19,170
که در حال نوشتن گزارشهای بسیار زیاد هستید، خیلی
252
00:14:19,170 –> 00:14:22,590
جلوتر خواهید رفت، بنابراین اگر یکی از این
253
00:14:22,590 –> 00:14:27,750
اسلایدهای بنفش را دیدید، توجه داشته باشید زیرا میتوانید
254
00:14:27,750 –> 00:14:30,420
بقیه موارد را نادیده بگیرید. بحث اما این
255
00:14:30,420 –> 00:14:34,280
اسلایدها واقعاً مهم هستند، بنابراین
256
00:14:34,280 –> 00:14:40,020
تئوری من در مورد اینکه چرا انجام توسعه fpga
257
00:14:40,020 –> 00:14:43,770
اینقدر سخت است این چهار نکته
258
00:14:43,770 –> 00:14:48,930
را بررسی می کنم، بنابراین فکر می کنم
259
00:14:48,930 –> 00:14:52,740
اولین نکته اصلی این است که زبان های hto
260
00:14:52,740 –> 00:14:54,660
برای آنچه شما نامناسب هستند. دوباره
261
00:14:54,660 –> 00:15:00,420
یک در واقع شما باید
262
00:15:00,420 –> 00:15:03,890
از یک زبان برنامه نویسی برای توسعه
263
00:15:03,890 –> 00:15:08,280
سخت افزار استفاده کنید. آنچه که آنها در VHDL وارد می شوند،
264
00:15:08,280 –> 00:15:10,820
زبان های توصیف سخت افزار
265
00:15:10,820 –> 00:15:13,350
هستند و در توصیف سخت افزار بسیار خوب هستند،
266
00:15:13,350 –> 00:15:16,920
اما بیشتر اوقات کاری که شما
267
00:15:16,920 –> 00:15:20,790
انجام می دهید ساختن سخت افزار از بلوک های کوچک است.
268
00:15:20,790 –> 00:15:23,490
و لوله کشی آنها در کنار هم این چیزی نیست
269
00:15:23,490 –> 00:15:24,390
که زبان توصیف سخت افزار
270
00:15:24,390 –> 00:15:26,850
در آن خوب است، این چیزی است
271
00:15:26,850 –> 00:15:29,520
که یک زبان
272
00:15:29,520 –> 00:15:31,320
برنامه نویسی در زبان برنامه نویسی خوب است
273
00:15:31,320 –> 00:15:34,380
در ساخت اجزای قابل ترکیب که
274
00:15:34,380 –> 00:15:36,360
می توانید آنها را با هم قرار دهید تا اجزای بزرگتر بسازید،
275
00:15:36,360 –> 00:15:41,730
خوب است. از
276
00:15:41,730 –> 00:15:47,160
جلو گذشت این همان کاری است که جن واقعاً انجام می
277
00:15:47,160 –> 00:15:51,150
دهد و به شما اجازه نمی دهد پایتون را بگیرید و
278
00:15:51,150 –> 00:15:55,590
مستقیماً آن را HD تبدیل کنید به مانند Verilog.
279
00:15:55,590 –> 00:15:58,590
در واقع سیستمی است که
280
00:15:58,590 –> 00:16:01,800
ایجاد یک دسته کامل از گزارش های بسیار آسان را آسان
281
00:16:01,800 –> 00:16:06,180
می کند. بهعنوان
282
00:16:06,180 –> 00:16:09,690
یک روش آسان برای نوشتن بسیاری از گزارشهای
283
00:16:09,690 –> 00:16:17,600
بسیار سریع و در اینجا یک مثال ساده
284
00:16:21,110 –> 00:16:26,340
وجود دارد که دو چیز در میانه وجود دارد که
285
00:16:26,340 –> 00:16:27,750
bunning امروز صبح به آنها اشاره کرد
286
00:16:27,750 –> 00:16:30,750
که ترکیبی هستند. عباراتی که
287
00:16:30,750 –> 00:16:32,790
میتوانید بهعنوان
288
00:16:32,790 –> 00:16:35,010
اتصال مؤثر سیم بین دو مکان
289
00:16:35,010 –> 00:16:37,170
در نظر بگیرید، از نظر الکتریکی عملاً یکسان هستند
290
00:16:37,170 –> 00:16:40,530
، بنابراین وقتی میگویید II
291
00:16:40,530 –> 00:16:43,230
میتواند a باشد و B هرگز نمیتواند متفاوت
292
00:16:43,230 –> 00:16:45,420
باشد، همیشه مقدار یکسانی دارند و
293
00:16:45,420 –> 00:16:47,460
همزمان هستند. عبارات و این
294
00:16:47,460 –> 00:16:51,780
چیزها در لبه ساعت اتفاق می افتد و بنابراین در
295
00:16:51,780 –> 00:16:55,530
این مورد a تنظیم می شود زمانی که ساعت
296
00:16:55,530 –> 00:17:00,000
تیک می زند و بنابراین این یک مثال LED چشمک زن
297
00:17:00,000 –> 00:17:06,650
در وسط است، ما یک شمارنده داریم
298
00:17:06,650 –> 00:17:09,449
هر بار که یک دستور همزمان است،
299
00:17:09,449 –> 00:17:11,790
بنابراین هر بار که یک ساعت وجود دارد
300
00:17:11,790 –> 00:17:13,680
شمارنده برابر با شمارنده منهای
301
00:17:13,680 –> 00:17:19,410
یک که بسیار ساده است را علامت بزنید، سپس یک
302
00:17:19,410 –> 00:17:22,949
عبارت ترکیبی وجود دارد که می
303
00:17:22,949 –> 00:17:28,530
گوید LED را برابر با بالاترین بیت قرار دهید، این همان
304
00:17:28,530 –> 00:17:29,760
چیزی است که
305
00:17:29,760 –> 00:17:32,430
اگر به منفی پایتون عادت ندارید، آن یک منفی است مانند
306
00:17:32,430 –> 00:17:35,550
آخرین چیز در ایندکس و بنابراین
307
00:17:35,550 –> 00:17:39,690
بالاترین مهم ترین بیت
308
00:17:39,690 –> 00:17:43,590
برابر با LED باشد و این بدان معناست که وقتی
309
00:17:43,590 –> 00:17:44,970
این یکی است LED شما
310
00:17:44,970 –> 00:17:47,880
و زمانی که صفر است آن LED
311
00:17:47,880 –> 00:17:51,900
خاموش خواهید شد و این واقعاً ساده است
312
00:17:51,900 –> 00:17:54,120
زیرا پایتون یک
313
00:17:54,120 –> 00:17:56,850
زبان مولد قدرتمند است و می تواند همان
314
00:17:56,850 –> 00:17:59,970
گزارشی را که برای این کار نیاز دارید تولید کند، به عنوان مثال
315
00:17:59,970 –> 00:18:03,200
ما سیگنالی به نام شمارنده ایجاد
316
00:18:03,200 –> 00:18:07,039
کردیم و گفتیم که این سیگنال حداکثر
317
00:18:07,039 –> 00:18:12,120
این تعداد چرخه بزرگ خواهد بود و اندازه سیگنال به
318
00:18:12,120 –> 00:18:15,630
طور خودکار به اندازه کافی بزرگ است که
319
00:18:15,630 –> 00:18:18,539
مناسب باشد. این عدد نیازی نیست
320
00:18:18,539 –> 00:18:21,720
نگران چند بیت باشید، خواه
321
00:18:21,720 –> 00:18:24,840
پنج بیت باشد یا سی بیت، فقط می دانید
322
00:18:24,840 –> 00:18:29,340
که به اندازه کافی بزرگ است تا با
323
00:18:29,340 –> 00:18:34,799
چرخه ها هم
324
00:18:34,799 –> 00:18:38,580
مطابقت داشته باشد. از ال ای دی ها می
325
00:18:38,580 –> 00:18:41,070
توانم لیستی از ال ای
326
00:18:41,070 –> 00:18:44,669
دی ها را وارد کنم و سپس برای هر ال ای دی می توانم آنها را روی بالاترین مقدار تنظیم کنم و به این
327
00:18:44,669 –> 00:18:49,679
ترتیب همه آنها می دانند که همه به صورت هماهنگ غرق می شوند و
328
00:18:49,679 –> 00:18:53,549
این بسیار منطقی است که نیازی
329
00:18:53,549 –> 00:18:55,890
به انجام برخی از انواع تولیدات عجیب و غریب نیست.
330
00:18:55,890 –> 00:18:58,490
این بیانیه فقط یک حلقه برای ساده است
331
00:18:58,490 –> 00:19:04,740
و به همین دلیل است که من معتقدم زبانی
332
00:19:04,740 –> 00:19:06,809
مانند پایتون یک زبان برنامه نویسی مناسب
333
00:19:06,809 –> 00:19:10,080
برای تولید verilock بسیار خوب است
334
00:19:10,080 –> 00:19:12,450
و معتقدم پایتون یک
335
00:19:12,450 –> 00:19:13,919
زبان واقعاً خوب برای این کار است زیرا
336
00:19:13,919 –> 00:19:17,010
پایتون به عنوان یک زبان چسب طراحی شده
337
00:19:17,010 –> 00:19:18,299
است باهم چیزهای زیادی را کنار هم قرار دهید
338
00:19:18,299 –> 00:19:24,390
و بنابراین این اولین نکته من برای شماست که از
339
00:19:24,390 –> 00:19:27,360
یک زبان برنامه نویسی استفاده کنید نه یک
340
00:19:27,360 –> 00:19:30,539
زبان HDL برای توصیف سخت افزار FPGA خود،
341
00:19:30,539 –> 00:19:33,740
زیرا اغلب اوقات شما
342
00:19:33,740 –> 00:19:38,070
ثبات های واضح و
343
00:19:38,070 –> 00:19:40,230
چیزهای سطح پایین را نمی سازید،
344
00:19:40,230 –> 00:19:42,419
سطح بالاتری را ایجاد می کنید. چیزهایی که شما می خواهید بتوانید آنها را
345
00:19:42,419 –> 00:19:47,190
در چندین مکان مجددا استفاده کنید، بنابراین
346
00:19:47,190 –> 00:19:54,380
اولین مورد است، اما من چهار نکته داشتم،
347
00:19:54,380 –> 00:19:58,650
بنابراین در مورد این دو
348
00:19:58,650 –> 00:20:02,370
خوب وسط چه می شود، فقط فکر می کنم سخت افزار نوشتن
349
00:20:02,370 –> 00:20:04,350
اساساً به طور منطقی سخت است
350
00:20:04,350 –> 00:20:05,910
، چیزهای زیادی وجود دارد که باید
351
00:20:05,910 –> 00:20:07,559
فکر کنید. درباره و بسیاری از چیزهایی که
352
00:20:07,559 –> 00:20:10,790
برای درست کردن آن نیاز دارید و همچنین بسیار کند است،
353
00:20:10,790 –> 00:20:15,210
بنابراین بیایید کمتر این کار را انجام دهیم، اجازه دهید
354
00:20:15,210 –> 00:20:21,090
سختافزار کمتری بنویسیم و بهترین راه برای نوشتن
355
00:20:21,090 –> 00:20:23,700
سختافزار کمتر استفاده از یک CPU است،
356
00:20:23,700 –> 00:20:25,440
زیرا قبلاً یک قطعه سختافزاری است که
357
00:20:25,440 –> 00:20:28,559
ما میدانیم. کار می کند اما FPGA این است که من تمایل به
358
00:20:28,559 –> 00:20:30,390
کار با CPU
359
00:20:30,390 –> 00:20:32,580
ندارم زیرا ارزان هستم و نمی خواهم
360
00:20:32,580 –> 00:20:37,020
برای آن هزینه ای بپردازم بنابراین در عوض از یک CPU نرم استفاده می کنم
361
00:20:37,020 –> 00:20:40,920
و یک CPU نرم عالی است زیرا شما می
362
00:20:40,920 –> 00:20:44,610
توانید کدت را بنویس و ببینمت میتوانید
363
00:20:44,610 –> 00:20:47,190
یک GCC را کامپایل کنید و میتوانید آن را
364
00:20:47,190 –> 00:20:49,650
بهآسانی بهروزرسانی کنید، نوع برنامههایی را که من
365
00:20:49,650 –> 00:20:53,429
در C مینویسم، مانند میکروثانیهها کامپایل میکنند و من
366
00:20:53,429 –> 00:20:56,040
میتوانم آنها را در FPGA بسیار
367
00:20:56,040 –> 00:20:58,620
سریعتر از آن چیزی که حتی میتوانم یک
368
00:20:58,620 –> 00:21:01,559
مثال LED چشمکزن را برای Gateway
369
00:21:01,559 –> 00:21:04,679
کامپایل کنم، آپلود کنم. نیازی به آپدیت گیت وی نیست
370
00:21:04,679 –> 00:21:07,110
من همان دروازه را دارم اما فقط کد C را تغییر می دهم
371
00:21:07,110 –> 00:21:10,140
و این واقعاً عالی است
372
00:21:10,140 –> 00:21:11,850
زیرا بسیاری از کارهایی که می خواهید انجام دهید به
373
00:21:11,850 –> 00:21:14,880
عنوان مثال یک رابط
374
00:21:14,880 –> 00:21:16,770
خط فرمان این رابط خط فرمان انجام دادن آن
375
00:21:16,770 –> 00:21:20,820
در verilock وحشتناک است اما یک برنامه C بسیار پیش پاافتاده
376
00:21:20,820 –> 00:21:24,450
مثل این است که می دانید چگونه
377
00:21:24,450 –> 00:21:26,790
برنامه دوم C که احتمالاً انجام داده اید
378
00:21:26,790 –> 00:21:28,890
شبیه یک بازی ماجراجویی بوده است، این دقیقاً مانند
379
00:21:28,890 –> 00:21:30,540
یک بازی ماجراجویی است و اجازه دهید
380
00:21:30,540 –> 00:21:33,179
سریعتر از آن چیزی که شما می توانید آن ساعت را اجرا کنید
381
00:21:33,179 –> 00:21:40,110
انباشته شوند و میانه یک سیستم روی تراشه به شما می دهد.
382
00:21:40,110 –> 00:21:43,920
که دارای یک CPU نرم است و دارای
383
00:21:43,920 –> 00:21:46,350
تمام قطعات مورد نیاز برای اتصال یک
384
00:21:46,350 –> 00:21:49,380
CPU نرم به سخت افزاری است که به
385
00:21:49,380 –> 00:21:57,179
طور خودکار در حال توسعه آن هستید، بنابراین
386
00:21:57,179 –> 00:22:00,000
به شما امکان انتخاب CPU نرم را می دهد
387
00:22:00,000 –> 00:22:02,790
که می توانید پان LM 32 داشته باشید یا می توانید یک پردازنده باز داشته باشید.
388
00:22:02,790 –> 00:22:06,620
خطر 1k یا میتوانید ریسک 5 داشته باشید و
389
00:22:06,620 –> 00:22:09,500
کد شما اهمیتی
390
00:22:09,500 –> 00:22:12,409
نمیدهد که نسبت به معماری که
391
00:22:12,409 –> 00:22:15,230
استفاده میکنید مغایرت دارد، بنابراین ممکن است یکی را انتخاب کنید
392
00:22:15,230 –> 00:22:17,059
زیرا عملکرد بهتری دارد
393
00:22:17,059 –> 00:22:18,980
یا ممکن است یکی دیگر را انتخاب کنید
394
00:22:18,980 –> 00:22:22,250
زیرا نمایه متفاوتی برای تراشه شما دارد.
395
00:22:22,250 –> 00:22:23,990
یا ممکن است واقعاً فاصله داشته باشید نمیبارید، بنابراین
396
00:22:23,990 –> 00:22:26,299
معماری را انتخاب میکنید که
397
00:22:26,299 –> 00:22:28,610
کوچکترین عملکردی است که ممکن است بخواهید، بنابراین
398
00:22:28,610 –> 00:22:29,870
معماری را انتخاب
399
00:22:29,870 –> 00:22:31,879
میکنید که بهترین عملکرد را به شما میدهد و هیچ کدام از کدهای شما نیازی
400
00:22:31,879 –> 00:22:35,029
به تغییر ندارند، زیرا اساساً
401
00:22:35,029 –> 00:22:39,440
کدهای خرد C تولید میکند که به شما اجازه میدهد شما کد C را می
402
00:22:39,440 –> 00:22:43,399
نویسید که نسبت به نحوه
403
00:22:43,399 –> 00:22:46,129
پیاده سازی این ویژگی ها توسط معماری ناشناس
404
00:22:46,129 –> 00:22:51,370
است و بنابراین به یک مثال ساده برمی
405
00:22:52,240 –> 00:22:57,200
گردم اگر آنچه را که گفتم دنبال می کردم، چیزی است که
406
00:22:57,200 –> 00:22:59,330
واقعا می خواهم فقط یک ثبات GPIO است که
407
00:22:59,330 –> 00:23:01,669
می توانم روی آن بنویسم و LED را روشن می کند. و
408
00:23:01,669 –> 00:23:04,029
سپس می توانم کمی بنویسم و به درستی نگاه کنم و ای
409
00:23:04,029 –> 00:23:07,759
همان چیزی است که در جوراب من به نظر می رسد من یک
410
00:23:07,759 –> 00:23:12,679
اژول i/o دارم که گفتم دارای رج
411
00:23:12,679 –> 00:23:14,690
سترهای خودکار است که می توانید از
412
00:23:14,690 –> 00:23:18,649
PU بخوانید و بنویسید و دارای یک خر
413
00:23:18,649 –> 00:23:21,889
جی GPIO است. مدول که در LED داده ام و
414
00:23:21,889 –> 00:23:24,409
سپس می توانم این برنامه کوچک C
415
00:23:24,409 –> 00:23:28,940
را اینجا بنویسم که در آن فقط LED های I oh right را تایپ می کنم
416
00:23:28,940 –> 00:23:31,519
و سپس یک
417
00:23:31,519 –> 00:23:33,889
عملکرد خواب دارم و سپس دوباره می نویسم این
418
00:23:33,889 –> 00:23:37,490
یک برنامه C بسیار ساده است و این نام
419
00:23:37,490 –> 00:23:41,379
خودکار است. بر اساس کد بالا ایجاد شده است،
420
00:23:41,379 –> 00:23:45,200
بنابراین واقعاً قدرتمند است، آیا یک
421
00:23:45,200 –> 00:23:58,250
سؤال وجود دارد بله بله
422
00:23:58,250 –> 00:24:00,289
تقریباً کمی بیشتر وجود دارد مانند اینکه
423
00:24:00,289 –> 00:24:05,690
باید تعدادی شامل موارد مشابه داشته باشید بله و
424
00:24:05,690 –> 00:24:09,049
بنابراین همانطور که گفتم این یک ثبت نام GPIO ایجاد می کند
425
00:24:09,049 –> 00:24:11,600
و سپس این یک
426
00:24:11,600 –> 00:24:14,389
تابع C است که به طور خودکار تولید می شود که می توانید آن را
427
00:24:14,389 –> 00:24:17,799
صدا کنید
428
00:24:18,190 –> 00:24:21,820
بله CPU دارای تایمر داخلی است و
429
00:24:21,820 –> 00:24:25,929
بنابراین اساساً منتظر است تا تایمر
430
00:24:25,929 –> 00:24:28,960
چیزهای زیادی را که من معتقدم بشمارد یا
431
00:24:28,960 –> 00:24:32,109
ممکن است فقط بر اساس چرخه باشد.
432
00:24:32,109 –> 00:24:36,029
هرگز نیازی به بررسی آن نیست،
433
00:24:36,029 –> 00:24:38,619
آن را با کتابخانه استاندارد پاور ارائه میکند
434
00:24:38,619 –> 00:24:41,919
که جورابهای من و یک مثال واقعی از آن این
435
00:24:41,919 –> 00:24:44,979
است که وقتی کد DDR دارید باید
436
00:24:44,979 –> 00:24:47,859
آموزش دهید تا برای اولین بار DDR را بالا بیاورید،
437
00:24:47,859 –> 00:24:51,039
این یک
438
00:24:51,039 –> 00:24:54,099
فرآیند پروژه نسبتاً پیچیده است.
439
00:24:54,099 –> 00:24:56,349
خطاهای زیادی وجود دارد مواردی که شما
440
00:24:56,349 –> 00:24:59,289
قرار است به آنها رسیدگی کنید و این کار را
441
00:24:59,289 –> 00:25:01,840
تا زمانی که ممکن است به عنوان یک ماشین حالت انجام دهید، من
442
00:25:01,840 –> 00:25:04,929
آن را دیدهام، نمیدانم چگونه
443
00:25:04,929 –> 00:25:06,970
توانستهاند آن را کار کنند، در حالی که در
444
00:25:06,970 –> 00:25:09,279
C واقعاً آسان است و به نظر
445
00:25:09,279 –> 00:25:11,979
میرسد که verilock کد برای انجام
446
00:25:11,979 –> 00:25:15,909
این آموزش از منابع بیشتری نسبت
447
00:25:15,909 –> 00:25:19,869
به CPU نرم ما استفاده می کند، بنابراین ما می توانیم
448
00:25:19,869 –> 00:25:26,710
CPU نرم و SRAM خود را در آن در CPU نرم خود بنویسیم
449
00:25:26,710 –> 00:25:32,739
و یک CPU نرم افزاری رایگان فقط برای نیاز
450
00:25:32,739 –> 00:25:39,070
به انجام آموزش DDR دریافت کنیم.
451
00:25:39,070 –> 00:25:42,970
و B
452
00:25:42,970 –> 00:25:45,759
ابزارهای جدید و یک چیز اضافی که من سعی می کنم
453
00:25:45,759 –> 00:25:47,529
این کار را بسیار آسان کنم، چیزی به نام
454
00:25:47,529 –> 00:25:49,659
محیط ساخت هگز سبک وجود دارد
455
00:25:49,659 –> 00:25:51,789
که تمام ابزارهای مورد نیاز
456
00:25:51,789 –> 00:25:58,779
شما را در صورت اجرای لینوکس در اختیار شما قرار می
457
00:25:58,779 –> 00:26:02,669
458
00:26:02,990 –> 00:26:06,650
دهد. ما میدانیم که
459
00:26:06,650 –> 00:26:10,020
میکرو پایتون برای کسانی که
460
00:26:10,020 –> 00:26:13,200
461
00:26:13,200 –> 00:26:17,490
462
00:26:17,490 –> 00:26:21,539
463
00:26:21,539 –> 00:26:25,650
نمیخواهند چیست.
464
00:26:25,650 –> 00:26:29,250
پایتون روی
465
00:26:29,250 –> 00:26:31,770
y جوراب ما را که باید تولید کنید و
466
00:26:31,770 –> 00:26:34,860
متدهای پایتون تولید شده خودکار را به
467
00:26:34,860 –> 00:26:37,590
همان روشی که مشاهده کردید دریافت کنید تا
468
00:26:37,590 –> 00:26:41,549
بتوانید سفتافزار خود را در پایتون بنویسید که
469
00:26:41,549 –> 00:26:44,960
روی جورابی که از پایتون تولید شده است
470
00:26:44,960 –> 00:26:47,580
471
00:26:47,580 –> 00:26:49,260
بنویسید. شما می توانید
472
00:26:49,260